Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 293)
@@ -824,15 +824,15 @@
         public enum SalaryDevision
         {
             /// <summary>
-            /// å…¨æ—¥æŒ¯åˆ†
+            /// 0:å…¨æ—¥æŒ¯åˆ†
             /// </summary>
             All = 0,
             /// <summary>
-            /// æŒ¯åˆ†ç„¡
+            /// 1:æŒ¯åˆ†ç„¡
             /// </summary>
             Noting,
             /// <summary>
-            /// æ—¥æ•°å…¥åŠ›
+            /// 2:æ—¥æ•°å…¥åŠ›
             /// </summary>
             DaysInput,
         }
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 293)
@@ -14,7 +14,7 @@
         /// <summary>
         /// æœ¬ä½“ãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
         /// </summary>
-        public static int s_SystemVersion = 102;
+        public static int s_SystemVersion = 103;
 
         /// <summary>
         /// ã‚³ãƒ”ãƒ¼ãƒ»ç’°å¢ƒãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs	(revision 293)
@@ -447,18 +447,28 @@
                 bool bApproval = false;
 
                 // æ‰¿èª�ãƒ‡ãƒ¼ã‚¿ã‚’å�–å¾—ã�™ã‚‹ï¼ˆç”³è«‹ãƒ‡ãƒ¼ã‚¿ã‚’é™¤ã��ï¼‰
-                string strSQL = "SELECT A.DISPLAYORDER, A.APPROVALPERSON, A.APPROVALAUTHORITY, B.SEQNO, B.APPROVALSTATUS";
-                strSQL += " FROM APPROVALMASTER A";
-                strSQL += " LEFT JOIN PERSONAPPROVAL B ON B.PERSONCODEAPPROVAL = A.APPROVALPERSON AND B.APPROVALCODE = A.APPROVALCODE";
-                strSQL += string.Format(" AND DATE(B.ORDERDATE) = STR_TO_DATE('{0}','%Y/%m/%d')", OrderDate.ToShortDateString());
-                strSQL += string.Format(" AND B.ORDERNO = {0} AND B.SEQNO != {1}", OrderNo, s_PrimartyRecord);
-                strSQL += string.Format(" WHERE A.APPROVALCODE = {0}", ApprovalCode);
-                strSQL += " AND A.DEPARTMENTCODE = (SELECT C.DEPARTMENTCODE FROM PERSONINCHARGEMASTER C";
-                strSQL += string.Format(" WHERE C.PERSONCODE = {0})", PersonCode);
-                strSQL += " ORDER BY A.DISPLAYORDER";
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("SELECT");
+                strSQL.Append(" A.DISPLAYORDER");
+                strSQL.Append(", A.APPROVALPERSON");
+                strSQL.Append(", A.APPROVALAUTHORITY");
+                strSQL.Append(", B.SEQNO");
+                strSQL.Append(", B.APPROVALSTATUS");
+                strSQL.Append(" FROM APPROVALMASTER A");
+                strSQL.Append(" LEFT JOIN PERSONAPPROVAL B");
+                strSQL.Append(" ON B.PERSONCODEAPPROVAL = A.APPROVALPERSON");
+                strSQL.Append(" AND B.APPROVALCODE = A.APPROVALCODE");
+                strSQL.AppendFormat(" AND DATE(B.ORDERDATE) = STR_TO_DATE('{0}','%Y/%m/%d')", OrderDate.ToShortDateString());
+                strSQL.AppendFormat(" AND B.ORDERNO = {0} AND B.SEQNO != {1}", OrderNo, s_PrimartyRecord);
+                strSQL.AppendFormat(" WHERE A.APPROVALCODE = {0}", ApprovalCode);
+                strSQL.Append(" AND A.DEPARTMENTCODE = ");
+                strSQL.Append(" (SELECT C.DEPARTMENTCODE");
+                strSQL.Append(" FROM PERSONINCHARGEMASTER C");
+                strSQL.AppendFormat(" WHERE C.PERSONCODE = {0})", PersonCode);
+                strSQL.Append(" ORDER BY A.DISPLAYORDER");
 
                 ArrayList DataList = new ArrayList();
-                if (!ApprDB.ExecuteReader(strSQL, ref DataList)) return false;
+                if (!ApprDB.ExecuteReader(strSQL.ToString(), ref DataList)) return false;
                 if (DataList.Count == 0) return false;
 
                 int NoCnt = DataList.Count;
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 293)
@@ -75,9 +75,6 @@
                 LedgerDetailDB.connect();
                 LedgerExcuteDB.connect(); LedgerExcuteDB.beginTran();
 
-                // è©³ç´°å�°å¸³ã‚ˆã‚Šã‚°ãƒªãƒƒãƒ‰ã�®ã‚«ãƒ©ãƒ ã‚’å�–å¾—ã�™ã‚‹
-                GetLedgerColumnCount();
-
                 // å¯¾è±¡ã‚’ã�¾ã�šå‰Šé™¤ã�™ã‚‹(å¯¾è±¡æœˆã�§å‰Šé™¤ã�™ã‚‹)
                 string strDelSQL = "DELETE FROM CONSTRUCTIONLEDGEREXCUTE";
                 strDelSQL += " WHERE CONSTRUCTIONCODE IN";
@@ -333,14 +330,9 @@
                 // ç�¾åœ¨ã�®å‡¦ç�†å¹´æœˆã‚’DateTimeåž‹ã�«å¤‰æ�›ã�™ã‚‹
                 DateTime NowDates = CommonMotions.cnvDate(TargetMonth + "/01");
 
-                // çµŒé�Žæœˆæ•°ã‚’å�–å¾—ã�™ã‚‹
-                //TimeSpan ts = NowDates - LedgerRec.ConstructionStart;
-                //int DiffMonth = ts.GetTimeSpanMonths();
-                int DiffMonth = (LedgerRec.ConstructionStart.Month + (LedgerRec.ConstructionStart.Year - NowDates.Year) * 12) - NowDates.Month;
+                // çµŒé�Žæœˆæ•°ã‚ˆã‚Šåˆ—ç•ªå�·å�–å¾—ã�™ã‚‹
+                ColCnt = CalcTargetMonthToColumn(LedgerRec.ConstructionStart, NowDates);
 
-                // åˆ—ç•ªå�·å�–å¾—
-                ColCnt = m_LedgerColumnCount + DiffMonth;
-
                 // å·¥äº‹è©³ç´°å�°å¸³æ˜Žç´°ãƒ‡ãƒ¼ã‚¿èª­è¾¼ã�¿
                 string strSQL = LedgerDetailDB.CreatePrimarykeyString(ConstructionCode, GroupNo);
                 List<ConstructionLedgerDetail> DetailList = new List<ConstructionLedgerDetail>();
@@ -801,7 +793,7 @@
         /// <returns></returns>
         public static int CalcTargetMonthToColumn(DateTime StartDate, DateTime TargetMonth)
         {
-            int Columncnt = Enum.GetNames(typeof(FrmConstructionLedger.GridColumn)).Length - 1;
+            int Columncnt = Enum.GetNames(typeof(FrmConstructionLedger.GridColumn)).Length;
             try
             {
                 // å‡¦ç�†å¯¾è±¡å¹´æœˆæ—¥ã‚’å¯¾è±¡æœˆæœˆåˆ�æ—¥ã�«å¤‰æ�›ã�™ã‚‹
@@ -811,8 +803,6 @@
                 DateTime StartMonth = DateTimeUtil.BeginOfMonth(StartDate);
 
                 // çµŒé�Žæœˆæ•°ã‚’å�–å¾—ã�™ã‚‹
-                //TimeSpan ts = NowDates - StartDate;
-                //int DiffMonth = ts.GetTimeSpanMonths();
                 int DiffMonth = (TargetMonth.Month + (TargetMonth.Year - StartDate.Year) * 12) - StartDate.Month;
 
                 // åˆ—ç•ªå�·å�–å¾—
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 293)
@@ -984,10 +984,10 @@
         {
             // å·¥äº‹åŸºæœ¬å…¥åŠ›
             FrmConstructionBaseInfo frm = new FrmConstructionBaseInfo();
+            // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
             try
             {
-                // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1013,6 +1013,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1026,10 +1028,10 @@
         {
             // ç©�ç®—è¦‹ç©�æ›¸å…¥åŠ›
             FrmEstimateInput frm = new FrmEstimateInput();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1052,6 +1054,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1065,10 +1069,10 @@
         {
             // ç©�ç®—è¦‹ç©�å�°åˆ·
             FrmEstimatePrint frm = new FrmEstimatePrint();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1092,6 +1096,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1144,10 +1150,10 @@
         {
             // å·¥äº‹äºˆç®—æ›¸å…¥åŠ›
             FrmConstructionBudget frm = new FrmConstructionBudget();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1170,6 +1176,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1183,10 +1191,10 @@
         {
             // æ³¨æ–‡æ›¸å…¥åŠ›
             FrmPurchaseOrderEntry frm = new FrmPurchaseOrderEntry();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1226,6 +1234,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1239,10 +1249,10 @@
         {
             // æ³¨æ–‡æ›¸å…¥åŠ›
             FrmPurchaseOrderPrint frm = new FrmPurchaseOrderPrint();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1267,6 +1277,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1394,10 +1406,10 @@
         {
             // å·¥äº‹è©³ç´°å�°å¸³
             FrmConstructionLedger frm = new FrmConstructionLedger();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1424,6 +1436,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1437,10 +1451,10 @@
         {
             //ã€€äº¤é€šè²»å�Šã�³è³¼å…¥å“�å…¥åŠ›
             FrmTAndPCosts frm = new FrmTAndPCosts();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1468,6 +1482,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1528,10 +1544,10 @@
         {
             // å·¥äº‹æ—¥å ±å…¥åŠ›
             FrmDRConstruction frm = new FrmDRConstruction();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.DRConstruction;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.DRConstruction;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1561,6 +1577,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1574,10 +1592,10 @@
         {
             // è­°äº‹éŒ²å…¥åŠ›
             FrmProceedings frm = new FrmProceedings();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.Proceedings;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.Proceedings;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1607,6 +1625,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -1825,10 +1845,10 @@
         {
             // å‡ºå‹¤ç®¡ç�†å…¥åŠ›
             FrmDRWork frm = new FrmDRWork();
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.DRWork;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.DRWork;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -1859,6 +1879,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
@@ -2128,8 +2150,15 @@
 
                 if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
 
-                // ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                // ----- ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                // æ‰‹é–“ãƒ»æ¥­è€…åŒºåˆ†
                 frm.Labourkind = CurrentPara.IntExecParameter[0];
+                // ãƒ¡ãƒ‹ãƒ¥ãƒ¼èµ·å‹•ãƒ•ãƒ©ã‚°
+                if (CurrentPara.BoolExecParameter.Count > 0) frm.FirstFlg = CurrentPara.BoolExecParameter[0];
+                // æ‰¿èª�ä¸€è¦§ç”»é�¢ã‚ˆã‚Šã�®ãƒ‘ãƒ©ãƒ¡ã‚¿å¯¾è±¡æœˆ
+                if (CurrentPara.DateExecParameter.Count > 0) frm.ParaTargetDate = CommonMotions.cnvInt(CurrentPara.DateExecParameter[0].ToString("yyyyMM"));
+                // æ”¯æ‰•æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+                if (CurrentPara.IntExecParameter.Count > 1) frm.PaymentPersonCode = CurrentPara.IntExecParameter[1];
 
                 // ãƒ•ã‚©ãƒ¼ãƒ è¡¨ç¤º
                 frm.ShowDialog();
@@ -2152,14 +2181,12 @@
         /// <returns></returns>
         public static void ProcessExecuteNo_RequestInput(ProcessParameter CurrentPara)
         {
-
             // è«‹æ±‚å…¥åŠ›ç”»é�¢
             FrmRequestInput frm = new FrmRequestInput();
-
+            int ProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestInput;
             try
             {
                 // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
-                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestInput;
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -2188,6 +2215,8 @@
             finally
             {
                 frm.Dispose(); frm = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentDataDetail.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentDataDetail.cs	(revision 293)
@@ -8,6 +8,20 @@
 {
     public class PaymentDataDetail
     {
+        #region å®šæ•°
+        public enum ApprovalEndFlgDef
+        {
+            /// <summary>
+            /// 0:æ‰¿èª�æœªå®š
+            /// </summary>
+            UnKown = 0,
+            /// <summary>
+            /// 1:æ‰¿èª�
+            /// </summary>
+            Approval,
+        }
+        #endregion
+
         #region ãƒ¡ãƒ³ãƒ�å¤‰æ•°
         private int         m_CompanyCode = 0;              // å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
         private int         m_TargetDate = 0;               // å¯¾è±¡å¹´æœˆ     
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmAppManAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmAppManAux.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmAppManAux.cs	(revision 293)
@@ -22,6 +22,7 @@
 using ProcessManagement.Forms.SubForms;
 using ProcessManagement.Forms.ControlsAction;
 using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.DB.MySql;
 
 namespace ProcessManagement.Forms.DataEntry
 {
@@ -50,7 +51,6 @@
                         break;
                     case (int)ClsExcute.ApprovalListNo.FeePayment:
                         // 11:æ‰‹é–“æ”¯æ‰•
-                        break;
                     case (int)ClsExcute.ApprovalListNo.SubConstrPayment:
                         // 12:æ¥­è€…æ”¯æ‰•
                         break;
@@ -570,5 +570,285 @@
             }
         }
         #endregion
+
+        #region æ‰¿èª�å‡¦ç�†ãƒ•ãƒ©ã‚°
+        /// <summary>
+        /// æ‰¿èª�å‡¦ç�†ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private enum AppStatusDef
+        {
+            /// <summary>
+            /// 0:ç„¡å‡¦ç�†
+            /// </summary>
+            NonStatus = 0,
+            /// <summary>
+            /// 1:ç”³è«‹
+            /// </summary>
+            Pettion,
+            /// <summary>
+            /// 2:æœ€çµ‚æ‰¿èª�
+            /// </summary>
+            Approval,
+            /// <summary>
+            /// 3:ä¸�æ‰¿èª�ãƒ»ä¿�ç•™ãƒ»å�–æ¶ˆ
+            /// </summary>
+            NoApproval,
+        }
+        #endregion
+
+        #region æ”¯æ‰•æ‰¿èª�ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+        /// <summary>
+        /// æ”¯æ‰•æ‰¿èª�ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+        /// </summary>
+        /// <returns></returns>
+        private bool CreatePaymentApprovalInfo(int nAppStat)
+        {
+            IOPaymentApprovalInfo PayAppInfoDB = new IOPaymentApprovalInfo();
+            IOPaymentDataDetail PayDetailDB = new IOPaymentDataDetail();
+            try
+            {
+                DataGridView dgv = dgvEntryData;
+                int nTergetRowCnt = -1;
+                // æ‰¿èª�é †åº�å�–å¾—
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    int nPersonCode = CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispGridColumn.ApprovalCode].Value);
+                    if (nPersonCode == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        nTergetRowCnt = i;
+                        break;
+                    }
+                }
+                if (nTergetRowCnt < 0) return false;
+
+                bool bSuccess = true;
+                ArrayList arData = null;
+                if (m_ArrayParam.Count > 0)
+                {   // è«‹æ±‚ã�¾ã�¨ã‚�ç”»é�¢ã‚ˆã‚Šã�®èµ·å‹•ã�¯ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                    arData = m_ArrayParam[0];
+                }
+                else
+                {   // æ‰¿èª�æ™‚ã�¯ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã�®èµ·å‹•ã�¯ãƒ‡ãƒ¼ã‚¿ã‚’ä½œã‚‹
+                    arData = new ArrayList();
+                    SearchPayAppInfo(PayAppInfoDB, ref arData);
+                }
+
+                PayAppInfoDB.connect(); PayAppInfoDB.beginTran();
+                PayDetailDB.connect(); PayDetailDB.beginTran();
+
+                for (int i = 0; i < arData.Count; i++)
+                {
+                    PaymentApprovalInfo PaIWork = (PaymentApprovalInfo)arData[i];
+
+                    // ã‚­ãƒ¼é …ç›®ã�®ã�©ã‚Œã�‹ã�Œ0ã�®ãƒ‡ãƒ¼ã‚¿ã�¯å¯¾è±¡å¤–
+                    if (PaIWork.CompanyCode == 0 || PaIWork.TargetDate == 0
+                        || PaIWork.SeqNo == 0 || PaIWork.LineCount == 0) continue;
+
+                    switch (nAppStat)
+                    {
+                        case (int)AppStatusDef.Pettion:
+                            // 1:ç”³è«‹
+                            // æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+                            if (!PaymentApprovalInfoCreate(PayAppInfoDB, PaIWork, nTergetRowCnt))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            // æ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+                            if (!PaymentDataDetailUpdate(PayDetailDB, PaIWork, nAppStat))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            break;
+                        case (int)AppStatusDef.Approval:
+                            // 2:æœ€çµ‚æ‰¿èª�
+                            // æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+                            if (!PaymentApprovalInfoCreate(PayAppInfoDB, PaIWork, nTergetRowCnt))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            // æ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+                            if (!PaymentDataDetailUpdate(PayDetailDB, PaIWork, nAppStat))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            break;
+                        case (int)AppStatusDef.NoApproval:
+                            // 3:ä¸�æ‰¿èª�ãƒ»ä¿�ç•™ãƒ»å�–æ¶ˆ
+                            // æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+                            if (PaymentApprovalInfoRemove(PayAppInfoDB, PaIWork))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            break;
+                        default:
+                            // 0:ç„¡å‡¦ç�†ãƒ»ã��ã�®ä»–
+                            if (!PaymentApprovalInfoCreate(PayAppInfoDB, PaIWork, nTergetRowCnt))
+                            {
+                                bSuccess = false;
+                                break;
+                            }
+                            break;
+                    }
+                }
+
+                if (!bSuccess)
+                {
+                    PayAppInfoDB.rollback();
+                    PayDetailDB.rollback();
+                }
+
+                PayAppInfoDB.commit();
+                PayDetailDB.commit();
+
+                return bSuccess;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PayAppInfoDB.close(); PayAppInfoDB = null;
+                PayDetailDB.close(); PayDetailDB = null;
+            }
+        }
+        #endregion
+
+        #region æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+        /// <summary>
+        /// æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+        /// </summary>
+        /// <returns></returns>
+        private bool PaymentApprovalInfoCreate(IOPaymentApprovalInfo PayAppInfoDB
+                                                , PaymentApprovalInfo DataRec
+                                                , int nTergetRowCnt)
+        {
+            try
+            {
+                DataGridView dgv = dgvEntryData;
+
+                // DBãƒ‡ãƒ¼ã‚¿å­˜åœ¨ç¢ºèª�ãƒ�ã‚§ãƒƒã‚¯
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(PayAppInfoDB.CreatePrimarykeyString(DataRec.CompanyCode
+                                                                    , DataRec.TargetDate
+                                                                    , DataRec.SeqNo
+                                                                    , DataRec.LineCount
+                                                                    , nTergetRowCnt));
+                List<PaymentApprovalInfo> PayAppInfoList = new List<PaymentApprovalInfo>();
+                if (!PayAppInfoDB.SelectAction(strSQL.ToString(), ref PayAppInfoList, false)) return false;
+
+                // å­˜åœ¨ã�™ã‚Œã�°å‡¦ç�†ã�—ã�ªã�„
+                if (PayAppInfoList.Count > 0) return true;
+
+                // å­˜åœ¨ã�—ã�ªã�‘ã‚Œã�°è¿½åŠ 
+                int PersonCode = CommonMotions.cnvInt(dgv.Rows[nTergetRowCnt].Cells[(int)DispGridColumn.ApprovalCode].Value);
+                string PersonName = CommonMotions.cnvString(dgv.Rows[nTergetRowCnt].Cells[(int)DispGridColumn.ApprovalName].Value);
+                int Authority = CommonMotions.cnvInt(dgv.Rows[nTergetRowCnt].Cells[(int)DispGridColumn.ApprovalAuthority].Value);
+
+                DataRec.ApprovalNo = nTergetRowCnt;         // æ‰¿èª�é †åº�
+                DataRec.ApprovalPerson = PersonCode;        // æ‰¿èª�è€…ç•ªå�·
+                DataRec.ApprovalPersonName = PersonName;    // æ‰¿èª�è€…å��
+                DataRec.ApprovalAuthority = Authority;      // æ‰¿èª�æ¨©é™�
+                DataRec.ApprovalDate = DateTime.Now.Date;   // æ‰¿èª�æ—¥ä»˜
+
+                if (!PayAppInfoDB.InsertAction(DataRec, false)) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region æœ€çµ‚æ‰¿èª�æ™‚ï¼šæ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// <summary>
+        /// æœ€çµ‚æ‰¿èª�æ™‚ï¼šæ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// </summary>
+        /// <returns></returns>
+        private bool PaymentDataDetailUpdate(IOPaymentDataDetail PayDetailDB, PaymentApprovalInfo PaIWork, int nAppStat)
+        {
+            try
+            {
+                StringBuilder strActionSQL = new StringBuilder();
+                // æ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+                switch (nAppStat)
+                {
+                    case (int)AppStatusDef.Pettion:
+                        // ç”³è«‹æ™‚
+                        strActionSQL.AppendFormat(" APPROVALPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+                        strActionSQL.AppendFormat(", APPROVALDATE = STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.Now.ToShortDateString());
+                        break;
+                    case (int)AppStatusDef.Approval:
+                        // æ‰¿èª�æ™‚
+                        strActionSQL.AppendFormat(" APPROVALENDFLG = {0}", (int)PaymentDataDetail.ApprovalEndFlgDef.Approval);
+                        break;
+                    case (int)AppStatusDef.NoApproval:
+                        // ä¿�ç•™ç­‰å�–æ¶ˆã�—æ™‚
+                        strActionSQL.AppendFormat(" APPROVALENDFLG = {0}", (int)PaymentDataDetail.ApprovalEndFlgDef.UnKown);
+                        break;
+                    default:
+                        // ã��ã�®ä»–
+                        strActionSQL.Clear();
+                        break;
+                }
+                if (strActionSQL.ToString().Length < 1) return true;
+
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("UPDATE paymentdatadetail SET");
+                strSQL.Append(strActionSQL.ToString());
+                strSQL.Append(PayDetailDB.CreatePrimarykeyString(PaIWork.CompanyCode, PaIWork.TargetDate, PaIWork.SeqNo, PaIWork.LineCount));
+
+                if (!PayDetailDB.ExecuteNonQuery(strSQL.ToString(), false)) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// <summary>
+        /// æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// </summary>
+        /// <returns></returns>
+        private bool PaymentApprovalInfoRemove(IOPaymentApprovalInfo PayAppDB, PaymentApprovalInfo PaIWork)
+        {
+            try
+            {
+                StringBuilder strDel = new StringBuilder();
+                strDel.Append(PayAppDB.CreatePrimarykeyString(PaIWork.CompanyCode,
+                                            PaIWork.TargetDate,
+                                            PaIWork.SeqNo,
+                                            PaIWork.LineCount,
+                                            PaIWork.ApprovalNo));
+
+                List<PaymentApprovalInfo> InfoList = new List<PaymentApprovalInfo>();
+                if (PayAppDB.SelectAction(strDel.ToString(), ref InfoList) && InfoList.Count > 0)
+                {
+                    PayAppDB.DeleteAction(strDel.ToString(), false);
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.cs	(revision 293)
@@ -50,6 +50,7 @@
             ApprovalExecuteDate,
             DepartmentName,
             DisplayString,
+            ApprovalAuthority,
         }
         #endregion
 
@@ -577,7 +578,7 @@
                 RemoveCommentData();
 
                 // �\�¿Œã�ˆ—�‚ð‚¨‚±‚È‚¤
-                PettionNextProcess((int)CommonDefine.ApprovalStatus.Petition);
+                PettionNextProcess();
 
                 // Š®—¹ƒ�ƒbƒZ�[ƒW
                 CommonMotions.EntryEndMessage("’S“–ŽÒ�\�¿ƒf�[ƒ^", "�\�¿");
@@ -708,73 +709,62 @@
         /// <param name="e"></param>
         private void btnTargetData_Click(object sender, EventArgs e)
         {
-            int iNextProcessNo = 0;
-            // ----- ŽŸ�ˆ—�ƒZƒbƒg
-            switch (m_ApprovalCode)
+            try
             {
-                case (int)ClsExcute.ApprovalListNo.DRWorkApproval:                      // 8:�o‹ÎŠÇ—��³”F
-                    iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.DRWork;
-                    break;
-                case (int)ClsExcute.ApprovalListNo.CostomerRegistApproval:              // 9:”­’�ŽÒ“o˜^�³”F
-                    iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.CostomerRegist;
-                    break;
-                case (int)ClsExcute.ApprovalListNo.SubConstregistApproval:              // 10:‹¦—Í‰ïŽÐ“o˜^�³”F
-                    iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.SubConstrRegist;
-                    break;
-                case (int)ClsExcute.ApprovalListNo.FeePayment:                          // 11:ŽèŠÔŽx•¥
-                    iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
-                    break;
-                case (int)ClsExcute.ApprovalListNo.SubConstrPayment:                    // 12:‹ÆŽÒŽx•¥
-                    iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
-                    break;
-            }
-            if (iNextProcessNo == 0) return;
+                int iNextProcessNo = 0;
+                // ----- ŽŸ�ˆ—�ƒZƒbƒg
+                switch (m_ApprovalCode)
+                {
+                    case (int)ClsExcute.ApprovalListNo.DRWorkApproval:                      // 8:�o‹ÎŠÇ—��³”F
+                        iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.DRWork;
+                        break;
+                    case (int)ClsExcute.ApprovalListNo.CostomerRegistApproval:              // 9:”­’�ŽÒ“o˜^�³”F
+                        iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.CostomerRegist;
+                        break;
+                    case (int)ClsExcute.ApprovalListNo.SubConstregistApproval:              // 10:‹¦—Í‰ïŽÐ“o˜^�³”F
+                        iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.SubConstrRegist;
+                        break;
+                    case (int)ClsExcute.ApprovalListNo.FeePayment:                          // 11:ŽèŠÔŽx•¥
+                        iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
+                        break;
+                    case (int)ClsExcute.ApprovalListNo.SubConstrPayment:                    // 12:‹ÆŽÒŽx•¥
+                        iNextProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
+                        break;
+                }
+                if (iNextProcessNo == 0) return;
 
-            // ----- ‹N“®ƒvƒ�ƒZƒX�Ý’è
-            int NowPoint = ClsExcute.NextProcess(iNextProcessNo);
+                // ----- ‹N“®ƒvƒ�ƒZƒX�Ý’è
+                int NowPoint = ClsExcute.NextProcess(iNextProcessNo);
 
-            // ŽèŠÔ�E‹ÆŽÒŽx•¥‚¢‚Í‹æ•ª‚ªˆê”Ô�Å�‰
-            ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
-            PaymentApprovalInfo DataRec = null;
-            ArrayList DataList = null;
-            switch (m_ApprovalCode)
+                // ŽèŠÔ�E‹ÆŽÒŽx•¥‚¢‚Í‹æ•ª‚ªˆê”Ô�Å�‰
+                ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
+                switch (m_ApprovalCode)
+                {
+                    case (int)ClsExcute.ApprovalListNo.FeePayment:                          // 11:ŽèŠÔŽx•¥
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Labor);
+                        ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                        break;
+                    case (int)ClsExcute.ApprovalListNo.SubConstrPayment:                    // 12:‹ÆŽÒŽx•¥
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Normal);
+                        ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                        break;
+                }
+
+                // ----- ’S“–ŽÒƒR�[ƒhƒZƒbƒg
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_PersonCode);
+                // Žó•t“ú
+                ClsExcute.ProcControlPara[NowPoint].DateExecParameter.Add(m_SearchDate);
+                // Žó•t”Ô�†
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_SearchSeqNo);
+
+                m_bTargetFlg = true;
+                m_bEndFlg = true;
+                this.Close();
+            }
+            catch (Exception ex)
             {
-                case (int)ClsExcute.ApprovalListNo.FeePayment:                          // 11:ŽèŠÔŽx•¥
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Labor);
-�@�@                ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
-                    DataRec = new PaymentApprovalInfo();
-                    // ‘Î�Û”NŒŽ�iŽó•t“ú•t‚Ì”NŒŽ‚ð�Ý’è�j�j
-                    DataRec.TargetDate = CommonMotions.cnvInt(m_OrderDate.ToString("yyyyMM"));
-                    // ’S“–ŽÒƒR�[ƒh
-                    DataRec.ApprovalPerson = m_PersonCode;
-                    DataList = new ArrayList();
-                    DataList.Add(DataRec);
-                    ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Add(DataList);
-                    break;
-                case (int)ClsExcute.ApprovalListNo.SubConstrPayment:                    // 12:‹ÆŽÒŽx•¥
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Normal);
-�@�@                ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
-                    DataRec = new PaymentApprovalInfo();
-                    // ‘Î�Û”NŒŽ�iŽó•t“ú•t‚Ì”NŒŽ‚ð�Ý’è�j�j
-                    DataRec.TargetDate = CommonMotions.cnvInt(m_OrderDate.ToString("yyyyMM"));
-                    // ’S“–ŽÒƒR�[ƒh
-                    DataRec.ApprovalPerson = m_PersonCode;
-                    DataList = new ArrayList();
-                    DataList.Add(DataRec);
-                    ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Add(DataList);
-                    break;
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            
-            // ----- ’S“–ŽÒƒR�[ƒhƒZƒbƒg
-            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_PersonCode);
-            // Žó•t“ú
-            ClsExcute.ProcControlPara[NowPoint].DateExecParameter.Add(m_SearchDate);
-            // Žó•t”Ô�†
-            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_SearchSeqNo);
-
-            m_bTargetFlg = true;
-            m_bEndFlg = true;
-            this.Close();
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.designer.cs	(revision 293)
@@ -31,24 +31,16 @@
         private void InitializeComponent()
         {
             this.components = new System.ComponentModel.Container();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
             this.label1 = new System.Windows.Forms.Label();
             this.btnEnd = new System.Windows.Forms.Button();
             this.panel2 = new System.Windows.Forms.Panel();
-            this.dgvEntryData = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column07 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel1 = new System.Windows.Forms.Panel();
             this.lblLabel03 = new System.Windows.Forms.Label();
             this.label2 = new System.Windows.Forms.Label();
@@ -90,12 +82,21 @@
             this.btnEntryComment = new System.Windows.Forms.Button();
             this.label18 = new System.Windows.Forms.Label();
             this.tvDispData = new System.Windows.Forms.TreeView();
+            this.dgvEntryData = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column07 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column08 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel2.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).BeginInit();
             this.panel1.SuspendLayout();
             this.panel3.SuspendLayout();
             this.panel4.SuspendLayout();
             this.panel5.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).BeginInit();
             this.SuspendLayout();
             // 
             // label1
@@ -135,127 +136,6 @@
             this.panel2.Size = new System.Drawing.Size(760, 160);
             this.panel2.TabIndex = 15;
             // 
-            // dgvEntryData
-            // 
-            this.dgvEntryData.AllowUserToAddRows = false;
-            this.dgvEntryData.AllowUserToDeleteRows = false;
-            this.dgvEntryData.AllowUserToResizeColumns = false;
-            this.dgvEntryData.AllowUserToResizeRows = false;
-            this.dgvEntryData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvEntryData.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.Black;
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
-            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
-            this.dgvEntryData.ColumnHeadersHeight = 24;
-            this.dgvEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column01,
-            this.Column02,
-            this.Column03,
-            this.Column06,
-            this.Column07,
-            this.Column04,
-            this.Column05});
-            this.dgvEntryData.EnableHeadersVisualStyles = false;
-            this.dgvEntryData.Location = new System.Drawing.Point(6, 5);
-            this.dgvEntryData.Name = "dgvEntryData";
-            this.dgvEntryData.RowHeadersVisible = false;
-            this.dgvEntryData.RowHeadersWidth = 20;
-            this.dgvEntryData.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvEntryData.RowTemplate.Height = 24;
-            this.dgvEntryData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvEntryData.Size = new System.Drawing.Size(744, 146);
-            this.dgvEntryData.TabIndex = 8;
-            // 
-            // Column01
-            // 
-            this.Column01.Frozen = true;
-            this.Column01.HeaderText = "æ‰¿èª�è€…ã‚³ãƒ¼ãƒ‰";
-            this.Column01.Name = "Column01";
-            this.Column01.ReadOnly = true;
-            this.Column01.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column01.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column01.Visible = false;
-            this.Column01.Width = 5;
-            // 
-            // Column02
-            // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
-            this.Column02.DefaultCellStyle = dataGridViewCellStyle2;
-            this.Column02.Frozen = true;
-            this.Column02.HeaderText = "â„–";
-            this.Column02.Name = "Column02";
-            this.Column02.ReadOnly = true;
-            this.Column02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column02.Width = 44;
-            // 
-            // Column03
-            // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column03.DefaultCellStyle = dataGridViewCellStyle3;
-            this.Column03.Frozen = true;
-            this.Column03.HeaderText = "æ‰¿èª�è€…å��";
-            this.Column03.Name = "Column03";
-            this.Column03.ReadOnly = true;
-            this.Column03.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column03.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column03.Width = 150;
-            // 
-            // Column06
-            // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column06.DefaultCellStyle = dataGridViewCellStyle4;
-            this.Column06.Frozen = true;
-            this.Column06.HeaderText = "æ‰¿èª�çŠ¶æ…‹";
-            this.Column06.Name = "Column06";
-            this.Column06.ReadOnly = true;
-            this.Column06.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column06.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column06.Width = 125;
-            // 
-            // Column07
-            // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle5.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column07.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column07.Frozen = true;
-            this.Column07.HeaderText = "å‡¦ç�†æ—¥ä»˜";
-            this.Column07.Name = "Column07";
-            this.Column07.ReadOnly = true;
-            this.Column07.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column07.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column07.Width = 120;
-            // 
-            // Column04
-            // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column04.DefaultCellStyle = dataGridViewCellStyle6;
-            this.Column04.HeaderText = "æ‰€ã€€å±ž";
-            this.Column04.Name = "Column04";
-            this.Column04.ReadOnly = true;
-            this.Column04.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column04.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column04.Width = 145;
-            // 
-            // Column05
-            // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column05.DefaultCellStyle = dataGridViewCellStyle7;
-            this.Column05.HeaderText = "å½¹ã€€è�·";
-            this.Column05.Name = "Column05";
-            this.Column05.ReadOnly = true;
-            this.Column05.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column05.Width = 157;
-            // 
             // panel1
             // 
             this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
@@ -753,6 +633,134 @@
             this.tvDispData.Size = new System.Drawing.Size(544, 308);
             this.tvDispData.TabIndex = 158;
             // 
+            // dgvEntryData
+            // 
+            this.dgvEntryData.AllowUserToAddRows = false;
+            this.dgvEntryData.AllowUserToDeleteRows = false;
+            this.dgvEntryData.AllowUserToResizeColumns = false;
+            this.dgvEntryData.AllowUserToResizeRows = false;
+            this.dgvEntryData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvEntryData.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle15.BackColor = System.Drawing.Color.Black;
+            dataGridViewCellStyle15.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle15;
+            this.dgvEntryData.ColumnHeadersHeight = 24;
+            this.dgvEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column01,
+            this.Column02,
+            this.Column03,
+            this.Column06,
+            this.Column07,
+            this.Column04,
+            this.Column05,
+            this.Column08});
+            this.dgvEntryData.EnableHeadersVisualStyles = false;
+            this.dgvEntryData.Location = new System.Drawing.Point(6, 5);
+            this.dgvEntryData.Name = "dgvEntryData";
+            this.dgvEntryData.RowHeadersVisible = false;
+            this.dgvEntryData.RowHeadersWidth = 20;
+            this.dgvEntryData.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvEntryData.RowTemplate.Height = 24;
+            this.dgvEntryData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvEntryData.Size = new System.Drawing.Size(744, 146);
+            this.dgvEntryData.TabIndex = 8;
+            // 
+            // Column01
+            // 
+            this.Column01.Frozen = true;
+            this.Column01.HeaderText = "æ‰¿èª�è€…ã‚³ãƒ¼ãƒ‰";
+            this.Column01.Name = "Column01";
+            this.Column01.ReadOnly = true;
+            this.Column01.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column01.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column01.Visible = false;
+            this.Column01.Width = 5;
+            // 
+            // Column02
+            // 
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle16.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle16.ForeColor = System.Drawing.Color.Black;
+            this.Column02.DefaultCellStyle = dataGridViewCellStyle16;
+            this.Column02.Frozen = true;
+            this.Column02.HeaderText = "â„–";
+            this.Column02.Name = "Column02";
+            this.Column02.ReadOnly = true;
+            this.Column02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column02.Width = 44;
+            // 
+            // Column03
+            // 
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column03.DefaultCellStyle = dataGridViewCellStyle17;
+            this.Column03.Frozen = true;
+            this.Column03.HeaderText = "æ‰¿èª�è€…å��";
+            this.Column03.Name = "Column03";
+            this.Column03.ReadOnly = true;
+            this.Column03.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column03.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column03.Width = 150;
+            // 
+            // Column06
+            // 
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column06.DefaultCellStyle = dataGridViewCellStyle18;
+            this.Column06.Frozen = true;
+            this.Column06.HeaderText = "æ‰¿èª�çŠ¶æ…‹";
+            this.Column06.Name = "Column06";
+            this.Column06.ReadOnly = true;
+            this.Column06.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column06.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column06.Width = 125;
+            // 
+            // Column07
+            // 
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle19.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column07.DefaultCellStyle = dataGridViewCellStyle19;
+            this.Column07.Frozen = true;
+            this.Column07.HeaderText = "å‡¦ç�†æ—¥ä»˜";
+            this.Column07.Name = "Column07";
+            this.Column07.ReadOnly = true;
+            this.Column07.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column07.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column07.Width = 120;
+            // 
+            // Column04
+            // 
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column04.DefaultCellStyle = dataGridViewCellStyle20;
+            this.Column04.HeaderText = "æ‰€ã€€å±ž";
+            this.Column04.Name = "Column04";
+            this.Column04.ReadOnly = true;
+            this.Column04.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column04.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column04.Width = 145;
+            // 
+            // Column05
+            // 
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column05.DefaultCellStyle = dataGridViewCellStyle21;
+            this.Column05.HeaderText = "å½¹ã€€è�·";
+            this.Column05.Name = "Column05";
+            this.Column05.ReadOnly = true;
+            this.Column05.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column05.Width = 157;
+            // 
+            // Column08
+            // 
+            this.Column08.HeaderText = "æœ€çµ‚æ‰¿èª�åŒºåˆ†";
+            this.Column08.Name = "Column08";
+            this.Column08.Visible = false;
+            // 
             // FrmApprovalPerson
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -776,12 +784,12 @@
             this.Load += new System.EventHandler(this.FrmApprovalPerson_Load);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmApprovalPerson_KeyDown);
             this.panel2.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).EndInit();
             this.panel1.ResumeLayout(false);
             this.panel3.ResumeLayout(false);
             this.panel4.ResumeLayout(false);
             this.panel4.PerformLayout();
             this.panel5.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).EndInit();
             this.ResumeLayout(false);
 
         }
@@ -832,6 +840,7 @@
         private System.Windows.Forms.Button btnRemoveComment;
         private System.Windows.Forms.Button btnEntryComment;
         private System.Windows.Forms.Button btnReturnComment;
+        private System.Windows.Forms.Button btnRePetition;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
@@ -839,6 +848,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column07;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column04;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column05;
-        private System.Windows.Forms.Button btnRePetition;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column08;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.resx	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPerson.resx	(revision 293)
@@ -117,6 +117,12 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
   <metadata name="Column03.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -132,8 +138,8 @@
   <metadata name="Column05.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
-  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
+  <metadata name="Column08.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
   </metadata>
   <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>35</value>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPersonAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPersonAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalPerson/FrmApprovalPersonAuxiliary.cs	(revision 293)
@@ -91,16 +91,17 @@
                     return false;
                 }
 
-                // ç”³è«‹è€…ã�¨æœ€åˆ�ã�®æ‰¿èª�è€…ã�Œå�Œã�˜å ´å�ˆã�¯ç”³è«‹æ™‚ã�«æ‰¿èª�ã�™ã‚‹
-                if (m_dispLabelControl[(int)DispHeader.PetitionName].Text.Equals(m_dispLabelControl[(int)DispHeader.ApprovalName].Text))
+                // ç”³è«‹è€…ã�¨æœ€åˆ�ã�®æ‰¿èª�è€…ã�Œå�Œã�˜å ´å�ˆã�¯ç”³è«‹æ™‚ã�«æ‰¿èª�ã�™ã‚‹ã�Ÿã‚�ä»¥å¤–ã�¯ä»¥ä¸‹ã�®å‡¦ç�†ç„¡
+                if (!m_dispLabelControl[(int)DispHeader.PetitionName].Text.Equals(m_dispLabelControl[(int)DispHeader.ApprovalName].Text))
+                    return true;
+
+                // ç”³è«‹ãƒ»æ‰¿èª�ãƒ¬ã‚³ãƒ¼ãƒ‰æ›´æ–°
+                if (!ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval))
                 {
-                    // ç”³è«‹ãƒ»æ‰¿èª�ãƒ¬ã‚³ãƒ¼ãƒ‰æ›´æ–°
-                    if (!ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval))
-                    {
-                        MessageBox.Show("æ‰¿èª�ã�«å¤±æ•—ã�—ã�¾ã�—ã�Ÿã€‚", "æ‰¿èª�ã‚¨ãƒ©ãƒ¼", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
+                    MessageBox.Show("æ‰¿èª�ã�«å¤±æ•—ã�—ã�¾ã�—ã�Ÿã€‚", "æ‰¿èª�ã‚¨ãƒ©ãƒ¼", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
                 }
+
                 return true;
             }
             catch (Exception ex)
@@ -131,6 +132,7 @@
 
                 // ç”³è«‹ãƒ¬ã‚³ãƒ¼ãƒ‰æ›´æ–°
                 // æ‰¿èª�æ™‚ã�¯æ�¡ä»¶ã‚’æº€ã�Ÿã�™ã�‹ã‚’ãƒ�ã‚§ãƒƒã‚¯ã�™ã‚‹
+                int AppStat = (int)AppStatusDef.NonStatus;
                 switch (statusCode)
                 {
                     case (int)CommonDefine.ApprovalStatus.Approval:
@@ -143,12 +145,14 @@
 
                             // æœ€çµ‚æ‰¿èª�ã�Œæˆ�ã�•ã‚Œã�Ÿå¾Œã�®å‡¦ç�†
                             ApprovalNextProcess();
+
+                            AppStat = (int)AppStatusDef.Approval;
                         }
                         // æ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•ã�¯æ”¯æ‰•æ‰¿èª�ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’ä½œæˆ�ã�™ã‚‹
                         if (m_ApprovalCode == (int)ClsExcute.ApprovalListNo.FeePayment
                             || m_ApprovalCode == (int)ClsExcute.ApprovalListNo.SubConstrPayment)
                         {
-                            ApprovalFeePayment();
+                            CreatePaymentApprovalInfo(AppStat);
                         }
                         break;
                     default:
@@ -288,40 +292,19 @@
                     pRec.PersonCode = CommonMotions.LoginUserData.PersonCode;
                 }
 
-                // æ–°ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿å¯¾å¿œæ¸ˆã�¿ã�‹ã‚’ç¢ºèª�ã�™ã‚‹
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
                 {
-                    // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // æœ€é«˜æ©Ÿå¯†ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else
-                    {
-                        // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ã�‹æ‰¿èª�æ™‚ã�®ç®¡ç�†æ‹…å½“è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
-                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode && CurrentPerson != CommonMotions.LoginUserData.PersonCode) return;
-                    }
+                    // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
                 }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                {
+                    // çµŒå–¶è€…ã‚¢ã‚¯ã‚»ã‚¹
+                }
                 else
                 {
-                    // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
-                    {
-                        // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
-                    {
-                        // çµŒå–¶è€…ã‚¢ã‚¯ã‚»ã‚¹
-                    }
-                    else
-                    {
-                        // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
-                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode) return;
-                    }
+                    // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
+                    if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode) return;
                 }
 
                 // ç”³è«‹ãƒ»æ‰¿èª�ä»¥å¤–ã�¯ç”³è«‹ãƒœã‚¿ãƒ³ã‚’è¡¨ç¤ºã�™ã‚‹
@@ -613,19 +596,21 @@
                 int DepCode = ClsApprovalPermission.GetFromPersonAndApprovalTheDepartment(m_PersonCode, m_ApprovalCode, m_OrderDate, m_OrderNo);
                 // æ‰¿èª�ãƒ‡ãƒ¼ã‚¿ã‚’å�–å¾—ã�™ã‚‹
                 StringBuilder strSQL = new StringBuilder();
-                strSQL.Append("SELECT IFNULL(D.APPROVALSTATUS, -1),");
-                strSQL.Append(" DATE_FORMAT(D.PETITIONAPPROVALDATE,'%Y/%m/%d'),");
-                strSQL.Append(" D.INPUTCOMMENT,");
-                strSQL.Append(" B.PersonName,");
-                strSQL.Append(" B.DisplayString,");
-                strSQL.Append(" C.DepartmentString,");
-                strSQL.Append(" A.APPROVALPERSON,");
-                strSQL.Append(" A.DISPLAYORDER");
+                strSQL.Append("SELECT");
+                strSQL.Append(" IFNULL(D.APPROVALSTATUS, -1),");                    // 0
+                strSQL.Append(" DATE_FORMAT(D.PETITIONAPPROVALDATE,'%Y/%m/%d'),");  // 1
+                strSQL.Append(" D.INPUTCOMMENT,");                                  // 2
+                strSQL.Append(" B.PersonName,");                                    // 3
+                strSQL.Append(" B.DisplayString,");                                 // 4
+                strSQL.Append(" C.DepartmentString,");                              // 5
+                strSQL.Append(" A.APPROVALPERSON,");                                // 6
+                strSQL.Append(" A.DISPLAYORDER,");                                  // 7
+                strSQL.Append(" A.ApprovalAuthority");                              // 8
                 strSQL.Append(" FROM APPROVALMASTER A");
                 strSQL.Append(" LEFT JOIN PERSONINCHARGEMASTER B ON B.PERSONCODE = A.APPROVALPERSON");
                 strSQL.Append(" LEFT JOIN DEPARTMENTMASTER C ON C.DEPARTMENTCODE = B.DEPARTMENTCODE");
                 strSQL.AppendFormat(" LEFT JOIN PERSONAPPROVAL D ON D.PERSONCODE = {0}", m_PersonCode);
-                strSQL.AppendFormat(" And D.APPROVALCODE = {0}", m_ApprovalCode);
+                strSQL.Append(" And D.APPROVALCODE = A.APPROVALCODE");
                 strSQL.AppendFormat(" And DATE(D.ORDERDATE) = STR_TO_DATE('{0}','%Y/%m/%d')",m_OrderDate.ToShortDateString());
                 strSQL.AppendFormat(" And D.ORDERNO = {0}", m_OrderNo);
                 strSQL.Append(" And D.SEQNO <> 1");
@@ -643,7 +628,7 @@
                 string strPersonName = string.Empty;
                 string strPersonPosion = string.Empty;
                 string strDepartment = string.Empty;
-
+                int LastApproval = 0;
                 foreach (object[] objrec in pAppRec)
                 {
                     ApprovalStatus = (int)CommonDefine.ApprovalStatus.Undecided;
@@ -652,6 +637,7 @@
                     strPersonName = string.Empty;
                     strPersonPosion = string.Empty;
                     strDepartment = string.Empty;
+                    LastApproval = 0;
 
                     strPersonName = CommonMotions.cnvString(objrec[3]);
                     strPersonPosion = CommonMotions.cnvString(objrec[4]);
@@ -662,7 +648,7 @@
                         strDate = CommonMotions.cnvString(objrec[1]);
                         strComment = CommonMotions.cnvString(objrec[2]);
                     }
-
+                    LastApproval = CommonMotions.cnvInt(objrec[8]);
                     // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
                     int AddRowCnt = dgvEntryData.Rows.Add(CommonMotions.cnvInt(objrec[6]),
                                                             CommonMotions.cnvInt(objrec[7]),
@@ -670,7 +656,8 @@
                                                             CommonDefine.ApprovalStatusString[ApprovalStatus],
                                                             strDate,
                                                             strDepartment,
-                                                            strPersonPosion);
+                                                            strPersonPosion,
+                                                            LastApproval);
                     dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.BackColor = CommonDefine.ApprovalBackStatusColor[ApprovalStatus];
                     dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.ForeColor = CommonDefine.ApprovalForeStatusColor[ApprovalStatus];
                 }
@@ -849,12 +836,12 @@
         #endregion
 
         #region ---------- >> ç”³è«‹å¾Œå‡¦ç�†
-        #region ç”³è«‹å…ƒãƒ‡ãƒ¼ã‚¿ã�«å�—ä»˜ç•ªå�·ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        #region ç”³è«‹å¾Œã�®ãƒ‡ãƒ¼ã‚¿æ›´æ–°å‡¦ç�†ã‚’è¡Œã�†
         /// <summary>
-        /// ç”³è«‹å…ƒãƒ‡ãƒ¼ã‚¿ã�«å�—ä»˜ç•ªå�·ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// ç”³è«‹å¾Œã�®ãƒ‡ãƒ¼ã‚¿æ›´æ–°å‡¦ç�†ã‚’è¡Œã�†
         /// </summary>
         /// <returns></returns>
-        private bool PettionNextProcess(int AppAction)
+        private bool PettionNextProcess()
         {
             IOPersonApproval AppDB = new IOPersonApproval();
             try
@@ -891,8 +878,8 @@
                         break;
                     case (int)ClsExcute.ApprovalListNo.FeePayment:              // æ‰‹é–“æ”¯æ‰•æ‰¿èª�
                     case (int)ClsExcute.ApprovalListNo.SubConstrPayment:        // æ¥­è€…æ”¯æ‰•æ‰¿èª�
-                        // æ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•ãƒ‡ãƒ¼ã‚¿æ›´æ–°ãƒ»ä½œæˆ�å‡¦ç�†
-                        if (!PettionFeePayment(AppAction)) return false;
+                        // æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ä½œæˆ�å‡¦ç�†
+                        if (!CreatePaymentApprovalInfo((int)AppStatusDef.Pettion)) return false;
                         break;
                     default:
                         break;
@@ -959,225 +946,13 @@
         }
         #endregion
 
-        #region ç”³è«‹æ™‚ï¼šæ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•ãƒ‡ãƒ¼ã‚¿ä½œæˆ�å‡¦ç�†
-        /// <summary>
-        /// ç”³è«‹æ™‚ï¼šæ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•ãƒ‡ãƒ¼ã‚¿ä½œæˆ�å‡¦ç�†
-        /// </summary>
-        /// <returns></returns>
-        private bool PettionFeePayment(int AppAction)
-        {
-            IOPaymentDataDetail PayDetailDB = new IOPaymentDataDetail();
-            IOPaymentApprovalInfo PayAppDB = new IOPaymentApprovalInfo();
-            try
-            {
-                PayDetailDB.connect(); PayDetailDB.beginTran();
-                PayAppDB.connect(); PayAppDB.beginTran();
-
-                // æ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•æ‰¿èª�æƒ…å ±å�–å¾—
-                bool bSuccess = true;
-                int nBCompanyCode = 0;              // å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
-                int nBTargetDate = 0;               // å¯¾è±¡å¹´æœˆ     
-                int nBSeqNo = 0;                    // é€£ç•ª
-                int nBLineCount = 0;                // è¡Œç•ªå�·    
-                ArrayList arData = m_ArrayParam[0];
-                for (int i = 0; i < arData.Count; i++)
-                {
-                    PaymentApprovalInfo PaIWork = (PaymentApprovalInfo)arData[i];
-
-                    if (nBCompanyCode == PaIWork.CompanyCode        // å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
-                        && nBTargetDate == PaIWork.TargetDate       // å¯¾è±¡å¹´æœˆ
-                        && nBSeqNo == PaIWork.SeqNo                 // é€£ç•ª
-                        && nBLineCount == PaIWork.LineCount)        // è¡Œç•ªå�·
-                    {
-                    }
-                    else
-                    {
-                        if (PaIWork.CompanyCode == 0
-                            || PaIWork.TargetDate == 0
-                            || PaIWork.SeqNo == 0
-                            || PaIWork.LineCount == 0) continue;
-
-                        // æ¥­è€…è«‹æ±‚æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
-                        if (!PaymentDataDetailUpdate(PayDetailDB, PaIWork))
-                        {
-                            bSuccess = false;
-                            break;
-                        }
-
-                        nBCompanyCode = PaIWork.CompanyCode;
-                        nBTargetDate = PaIWork.TargetDate;
-                        nBSeqNo = PaIWork.SeqNo;
-                        nBLineCount = PaIWork.LineCount;
-                    }
-                }
-                if (!bSuccess)
-                {
-                    PayDetailDB.rollback();
-                    PayAppDB.rollback();
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                PayDetailDB.commit(); PayDetailDB.close(); PayDetailDB = null;
-                PayAppDB.commit(); PayAppDB.close(); PayAppDB = null;
-            }
-        }
-        #endregion
-
-        #region ç”³è«‹æ™‚ï¼šæ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
-        /// <summary>
-        /// ç”³è«‹æ™‚ï¼šæ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
-        /// </summary>
-        /// <returns></returns>
-        private bool PaymentDataDetailUpdate(IOPaymentDataDetail PayDetailDB,
-                                                PaymentApprovalInfo PaIWork)
-        {
-            try
-            {
-                StringBuilder strSQL = new StringBuilder();
-                // æ”¯æ‰•æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
-                strSQL.Append("UPDATE paymentdatadetail SET");
-                strSQL.AppendFormat(" APPROVALPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);   // æ‰¿èª�æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
-                strSQL.AppendFormat(", APPROVALDATE = STR_TO_DATE('{0}','%Y/%m/%d')"
-                                                , DateTime.Now.ToShortDateString());                        // æ‹…å½“è€…æ‰¿èª�æ—¥ä»˜
-                strSQL.Append(", APPROVALENDFLG = 1");                                                      // æ‰¿èª�å®Œäº†ãƒ•ãƒ©ã‚°
-                strSQL.Append(PayDetailDB.CreatePrimarykeyString(PaIWork.CompanyCode, PaIWork.TargetDate, PaIWork.SeqNo, PaIWork.LineCount));
-
-                if (!PayDetailDB.ExecuteNonQuery(strSQL.ToString(), false)) return false;
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿æ›´æ–°å‡¦ç�†
-        /// <summary>
-        /// æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿æ›´æ–°å‡¦ç�†
-        /// </summary>
-        /// <param name="PayAppDB"></param>
-        /// <param name="PaIWork"></param>
-        /// <returns></returns>
-        private bool ApprovalFeePayment()
-        {
-            IOPaymentApprovalInfo PayAppDB = new IOPaymentApprovalInfo();
-            try
-            {
-                PayAppDB.connect(); PayAppDB.beginTran();
-
-                ArrayList arData = null;
-                if (m_ArrayParam.Count > 0)
-                {   // è«‹æ±‚ã�¾ã�¨ã‚�ç”»é�¢ã‚ˆã‚Šã�®èµ·å‹•ã�¯ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
-                    arData = m_ArrayParam[0];
-                }
-                else
-                {   // æ‰¿èª�æ™‚ã�¯ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã�®èµ·å‹•ã�¯ãƒ‡ãƒ¼ã‚¿ã‚’ä½œã‚‹
-                    arData = new ArrayList();
-                    SearchPayAppInfo(ref arData);
-                }
-
-                bool bSuccess = true;
-                // æ‰‹é–“ãƒ»æ¥­è€…æ”¯æ‰•æ‰¿èª�æƒ…å ±å�–å¾—
-                for (int i = 0; i < arData.Count; i++)
-                {
-                    PaymentApprovalInfo PaIWork = (PaymentApprovalInfo)arData[i];
-
-                    StringBuilder strSQL = new StringBuilder();
-                    List<PaymentApprovalInfo> AddList = new List<PaymentApprovalInfo>();
-                    // æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿æ¤œç´¢
-                    strSQL.Append(PayAppDB.CreatePrimarykeyString(PaIWork.CompanyCode, PaIWork.TargetDate, PaIWork.SeqNo, PaIWork.LineCount, PaIWork.ApprovalNo));
-                    List<PaymentApprovalInfo> PayAppList = new List<PaymentApprovalInfo>();
-                    if (!PayAppDB.SelectAction(strSQL.ToString(), ref PayAppList, false)) return false;
-                    bool bExist = true;
-                    if (PayAppList.Count == 0) bExist = false;
-
-                    if (bExist)
-                    {   // ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚Œã�°æ‰¿èª�æ—¥ä»˜ã‚’å¤‰æ›´ã�™ã‚‹
-                        PayAppList[0].ApprovalDate = DateTime.Now.Date;
-                        if (!PayAppDB.UpdateAction(strSQL.ToString(), PayAppList[0], false))
-                        {
-                            bSuccess = false;
-                            break;
-                        }
-                    }
-                    else
-                    {   // ãƒ‡ãƒ¼ã‚¿ã�Œç„¡ã�‘ã‚Œã�°æ‰¿èª�è€…ãƒ‡ãƒ¼ã‚¿ã‚’ä½œæˆ�ã�™ã‚‹
-                        PaIWork.ApprovalDate = DateTime.Now.Date;
-                        if (!PayAppDB.InsertAction(PaIWork, false))
-                        {
-                            bSuccess = false;
-                            break;
-                        }
-                    }
-                }
-
-                if (!bSuccess)
-                {
-                    PayAppDB.rollback();
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                PayAppDB.commit(); PayAppDB.close(); PayAppDB = null;
-            }
-        }
-        #endregion
-
-        #region æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
-        /// <summary>
-        /// æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
-        /// </summary>
-        /// <returns></returns>
-        private bool PaymentApprovalInfoRemove(IOPaymentApprovalInfo PayAppDB, PaymentApprovalInfo PaIWork)
-        {
-            try
-            {
-                StringBuilder strDel = new StringBuilder();
-                strDel.Append(PayAppDB.CreatePrimarykeyString(PaIWork.CompanyCode,
-                                            PaIWork.TargetDate,
-                                            PaIWork.SeqNo,
-                                            PaIWork.LineCount,
-                                            PaIWork.ApprovalNo));
-
-                PayAppDB.DeleteAction(strDel.ToString(), false);
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
         #region èµ·å‹•ãƒ‘ãƒ©ãƒ¡ã‚¿ã�Œç„¡ã�„å ´å�ˆã�«æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ãƒ‘ãƒ©ãƒ¡ã‚¿ã‚’ä½œæˆ�ã�™ã‚‹
         /// <summary>
         /// èµ·å‹•ãƒ‘ãƒ©ãƒ¡ã‚¿ã�Œç„¡ã�„å ´å�ˆã�«æ”¯æ‰•æ‰¿èª�æƒ…å ±ãƒ‡ãƒ¼ã‚¿ãƒ‘ãƒ©ãƒ¡ã‚¿ã‚’ä½œæˆ�ã�™ã‚‹
         /// </summary>
         /// <returns></returns>
-        private void SearchPayAppInfo(ref ArrayList ArrList)
+        private void SearchPayAppInfo(IOPaymentApprovalInfo InfoDB, ref ArrayList ArrList)
         {
-            IOPaymentApprovalInfo InfoDB = new IOPaymentApprovalInfo();
             try
             {
                 StringBuilder strSQL = new StringBuilder();
@@ -1207,7 +982,7 @@
                 strSQL.AppendFormat(" C.PersonCode = {0}", m_PersonCode);
                 strSQL.AppendFormat(" And C.ApprovalCode = {0}", m_ApprovalCode);
                 strSQL.AppendFormat(" And DATE(C.OrderDate) = STR_TO_DATE('{0}', '%Y/%m/%d')", m_OrderDate.ToShortDateString());
-                strSQL.AppendFormat(" And C.OrderNo = {0}",CommonDefine.s_Default_OrderNo);
+                strSQL.AppendFormat(" And C.OrderNo = {0}", m_OrderNo);
                 strSQL.Append(" And C.SeqNo = 1");
                 strSQL.Append(" And A.APPROVALPERSONCODE = C.PersonCode");
                 strSQL.Append(" And DATE(A.APPROVALDATE) = DATE(C.EntryDate)");
@@ -1218,7 +993,7 @@
 
                 ArrayList DataList = new ArrayList();
                 if (!InfoDB.ExecuteReader(strSQL.ToString(), ref DataList)) return;
-                
+
                 ArrList.Clear();
                 PaymentApprovalInfo InfoRec = new PaymentApprovalInfo();
                 foreach (object[] objRec in DataList)
@@ -1246,10 +1021,6 @@
             {
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                InfoDB.close(); InfoDB = null;
-            }
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs	(revision 293)
@@ -77,13 +77,13 @@
                 // ------ å�°å¸³çµ�å�ˆå‡¦ç�†ã�®ãƒ�ã‚§ãƒƒã‚¯
                 if (m_ConstrBaseRec.JoinFlg == (int)ConstructionBaseInfo.JoinFlgDef.Standard)
                 {   // ------ çµ�å�ˆã�•ã‚Œã�¦ã�„ã�ªã�„ãƒ‡ãƒ¼ã‚¿
-                    // ç´�ä»˜ã��ãƒ‡ãƒ¼ã‚¿ã�‹ã�©ã�†ã�‹ã�®ãƒ�ã‚§ãƒƒã‚¯
+                    // å¢—æ¸›å·¥äº‹ãƒ‡ãƒ¼ã‚¿ã�‹ã�©ã�†ã�‹ã�®ãƒ�ã‚§ãƒƒã‚¯
                     if (m_ConstrBaseRec.TyingFlg != (int)ConstructionBaseInfo.TyingFlgDef.Tying)
-                    {   // ç´�ä»˜ã��ãƒ‡ãƒ¼ã‚¿ã�§ã�¯ã�ªã�„å ´å�ˆã�¯ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
+                    {   // å¢—æ¸›å·¥äº‹ãƒ‡ãƒ¼ã‚¿ã�§ã�¯ã�ªã�„å ´å�ˆã�¯ãƒ‡ãƒ¼ã‚¿ä½œæˆ�
                         if (!MakingLedgerData()) return false;
                     }
                     else
-                    {   // ç´�ä»˜ã��ã�®ãƒ‡ãƒ¼ã‚¿ã�¯ãƒ‡ãƒ¼ã‚¿ï¼ˆè¡Œï¼‰ã‚’è¿½åŠ ã�™ã‚‹
+                    {   // å¢—æ¸›å·¥äº‹ãƒ‡ãƒ¼ã‚¿ã�¯ãƒ‡ãƒ¼ã‚¿ï¼ˆè¡Œï¼‰ã‚’è¿½åŠ ã�™ã‚‹
                         if (!AddingLedgerData()) return false;
                     }
                 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs	(revision 293)
@@ -490,40 +490,19 @@
                     pRec.PersonCode = CommonMotions.LoginUserData.PersonCode;
                 }
 
-                // æ–°ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿å¯¾å¿œæ¸ˆã�¿ã�‹ã‚’ç¢ºèª�ã�™ã‚‹
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
                 {
-                    // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // æœ€é«˜æ©Ÿå¯†ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else
-                    {
-                        // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ã�‹æ‰¿èª�æ™‚ã�®ç®¡ç�†æ‹…å½“è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
-                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode && CurrentPerson != CommonMotions.LoginUserData.PersonCode) return;
-                    }
+                    // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
                 }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                {
+                    // çµŒå–¶è€…ã‚¢ã‚¯ã‚»ã‚¹
+                }
                 else
                 {
-                    // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
-                    if(CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
-                    {
-                        // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ï¼ˆã�™ã�¹ã�¦å¯¾è±¡ï¼‰
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
-                    {
-                        // çµŒå–¶è€…ã‚¢ã‚¯ã‚»ã‚¹
-                    }
-                    else
-                    {
-                        // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
-                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode) return;
-                    }
+                    // ãƒ­ã‚°ã‚¤ãƒ³è€…ã�Œç”³è«‹è€…ä»¥å¤–ã�¯å�–æ¶ˆã�—ã�§ã��ã�ªã�„
+                    if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode) return;
                 }
 
                 // ç”³è«‹ãƒ»æ‰¿èª�ä»¥å¤–ã�¯ç”³è«‹ãƒœã‚¿ãƒ³ã‚’è¡¨ç¤ºã�™ã‚‹
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 293)
@@ -945,6 +945,83 @@
         }
         #endregion
 
+        #region ’�•¶�‘�ì�¬�³”F�”Žæ“¾
+        /// <summary>
+        /// ’�•¶�‘�ì�¬�³”F�”Žæ“¾
+        /// </summary>
+        /// <param name="AllCount"></param>
+        /// <param name="PrintCount"></param>
+        private bool GetPrintApprovalCount(IOPurchaseOrder OrderDB, int ParentCode, int SourceCode)
+        {
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+
+                strSQL.Append("SELECT");
+                strSQL.Append(" A1.PURCHASEORDERFLG");
+                strSQL.Append(", A1.CONSTRUCTIONCODE");
+                strSQL.Append(", A1.SOURCECODE");
+                strSQL.Append(", A1.GROUPCOUNT");
+                strSQL.Append(", A1.COMPANYCODE");
+                strSQL.Append(", A3.SerialNo");
+                strSQL.Append(", A3.LinkCode");
+                strSQL.Append(", A4.ApprovalStatus");
+                strSQL.Append(" FROM");
+                strSQL.Append(" CONSTRUCTIONLEDGERDETAIL AS A1");
+                strSQL.Append(" Left Join purchaseorder As A2");
+                strSQL.Append("    On A2.ConstructionCode = A1.SourceCode");
+                strSQL.Append("    And A2.CompanyCode = A1.CompanyCode");
+                strSQL.Append(" Left Join processapprovaldetail AS A3");
+                strSQL.Append("    On A3.ConstructionCode = A2.ConstructionCode");
+                strSQL.AppendFormat("    And A3.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                strSQL.Append("    And A3.LinkCode = A2.SeqNo");
+                strSQL.Append(" Left Join processapproval AS A4");
+                strSQL.Append("    On A4.ConstructionCode = A3.ConstructionCode");
+                strSQL.Append("    And A4.ApprovalCode = A3.ApprovalCode");
+                strSQL.Append("    And A4.OrderNo = A3.OrderNo");
+                strSQL.Append("    And A4.SeqNo = 1");
+                strSQL.Append(" WHERE");
+                strSQL.AppendFormat("  A1.CONSTRUCTIONCODE = {0}", ParentCode);
+                strSQL.AppendFormat("  AND A1.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strSQL.Append("  AND A1.COMPANYCODE > 0");
+                strSQL.AppendFormat("  And A1.EXECUTIONAMOUNT >= {0}", CommonDefine.s_PrintOutPrice);
+                strSQL.AppendFormat("  And A1.PurchaseOrderFlg <> {0}",(int)ConstructionLedgerDetail.PurOrderFlgDef.NotMakingData);
+                strSQL.Append(" Order By");
+                strSQL.Append("  A1.PURCHASEORDERFLG");
+
+                ArrayList arList = new ArrayList();
+                if (!OrderDB.ExecuteReader(strSQL.ToString(), ref arList)) return false;
+                if (arList.Count == 0) return false;
+
+                bool bRet = true;
+                foreach (object[] objRec in arList)
+                {
+                    int OrderFlg = CommonMotions.cnvInt(objRec[0]);
+                    int Status = CommonMotions.cnvInt(objRec[7]);
+                    // �ì�¬–¢‚ª‚ ‚ê‚Î�ˆ—��I—¹
+                    if (OrderFlg == (int)ConstructionLedgerDetail.PurOrderFlgDef.NoCreate)
+                    {
+                        bRet = false;
+                        break;
+                    }
+                    // �³”F–¢‚ª‚ ‚ê‚Î�ˆ—��I—¹
+                    if (OrderFlg == (int)ConstructionLedgerDetail.PurOrderFlgDef.Making
+                        && Status != (int)CommonDefine.ApprovalStatus.Approval)
+                    {
+                        bRet = false;
+                        break;
+                    }
+                }
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region ’�•¶�‘ˆó�ü�”Žæ“¾
         /// <summary>
         /// ’�•¶�‘ˆó�ü�”Žæ“¾
@@ -957,24 +1034,15 @@
             {
                 StringBuilder strSQL = new StringBuilder();
                 
+
                 strSQL.Append("SELECT");
-                strSQL.Append(" A1.PURCHASEORDERFLG,");
-                strSQL.Append(" A1.CONSTRUCTIONCODE,");
-                strSQL.Append(" A1.SOURCECODE,");
-                strSQL.Append(" A1.GROUPCOUNT,");
-                strSQL.Append(" A1.COMPANYCODE,");
-                strSQL.Append(" A1.EXECUTIONAMOUNT");
+                strSQL.Append(" CompanyCode");
+                strSQL.Append(", CreateDate");
+                strSQL.Append(", PrintoutDate");
+                strSQL.Append(" From purchaseorder");
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" ConstructionCode = {0}", SourceCode);
 
-                strSQL.Append(" FROM");
-                strSQL.Append(" CONSTRUCTIONLEDGERDETAIL AS A1");
-                strSQL.Append(" WHERE");
-                strSQL.AppendFormat(" A1.CONSTRUCTIONCODE = {0}", ParentCode);
-                strSQL.AppendFormat(" And A1.SOURCECODE = {0}", SourceCode);
-                strSQL.AppendFormat(" AND A1.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
-                strSQL.Append(" AND A1.COMPANYCODE > 0");
-                strSQL.Append(" GROUP BY A1.COMPANYCODE");
-                strSQL.AppendFormat(" HAVING SUM(A1.EXECUTIONAMOUNT) >= {0}", CommonDefine.s_PrintOutPrice);
-
                 ArrayList arList = new ArrayList();
                 if (!OrderDB.ExecuteReader(strSQL.ToString(), ref arList)) return false;
                 if (arList.Count == 0) return false;
@@ -982,9 +1050,9 @@
                 bool bRet = true;
                 foreach (object[] objRec in arList)
                 {
-                    // –¢�ì�¬‚ª‚ ‚ê‚Î�I—¹
-                    if (CommonMotions.cnvInt(objRec[0])
-                        == (int)ConstructionLedgerDetail.PurOrderFlgDef.NoCreate)
+                    DateTime dtWrk = CommonMotions.cnvDate(objRec[2]);
+                    // ˆó�ü–¢‚ª‚ ‚ê‚Î�ˆ—��I—¹
+                    if (dtWrk.Date == DateTime.MinValue.Date)
                     {
                         bRet = false;
                         break;
@@ -1198,6 +1266,7 @@
                 DateTime dtAppStatus = DateTime.MinValue;
 
                 // ----- ‹N“®�ˆ—�–ˆ‚Ì“®�ì
+                int ParentCode = ClsProcessExist.GetParentConstrCode(nConstrCode);
                 switch (m_ExecuteFlg)
                 {
                     case (int)ClsExcute.ProcessExecuteNo.EstimateInput:                     // �ÏŽZŒ©�Ï�‘“ü—Í
@@ -1217,17 +1286,17 @@
                         }
                         break;
                     case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:                // ’�•¶�‘“ü—Í
+                        if (GetPrintApprovalCount(OrderDB, ParentCode, nConstrCode))
+                        {
+                            FlgString = "�ì�¬�Ï";
+                        }
+                        break;
                     case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:                // ’�•¶�‘ˆó�ü
-                        int ParentCode = ClsProcessExist.GetParentConstrCode(nConstrCode);
                         if (GetPrintCount(OrderDB, ParentCode, nConstrCode))
                         {
                             FlgString = "ˆó�ü�Ï";
                         }
-
-                        if (m_ExecuteFlg == (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint)
-                        {
-                            strConstrName += string.Format(" �\�¿{0}‰ñ–Ú", nOrderNo);
-                        }
+                        strConstrName += string.Format(" �\�¿{0}‰ñ–Ú", nOrderNo);
                         break;
                     default:
                         break;
@@ -1575,6 +1644,13 @@
                         radioButton2.Checked = true;
                         break;
                     case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:                // ’�•¶�‘“ü—Í
+                        // ‚»‚Ì‘¼‚Ì�ó‘Ô—ñ•\Ž¦
+                        OtherStatusVisible("�ì�¬");
+                        // ‰æ–Ê”wŒi�F•Ï�X                
+                        groupBox1.BackColor = Color.FromArgb(128, 128, 255);
+                        // �HŽ–’S“–ƒZƒbƒg
+                        radioButton2.Checked = true;
+                        break;
                     case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:                // ’�•¶�‘ˆó�ü
                         // ‚»‚Ì‘¼‚Ì�ó‘Ô—ñ•\Ž¦
                         OtherStatusVisible("ˆó�ü");
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 293)
@@ -565,11 +565,6 @@
         private PersonInChargeMaster m_PersonInChargeMaster = new PersonInChargeMaster();
 
         /// <summary>
-        /// �³”FŽÒƒŠƒXƒgƒnƒ“ƒhƒ‹
-        /// </summary>
-        private FrmApprovalAuthorizerList m_frmAuthorizerList = null;
-
-        /// <summary>
         /// ƒ‰ƒxƒ‹ƒRƒ“ƒgƒ��[ƒ‹•ÛŽ�”z—ñ
         /// </summary>
         private Control[] m_DspLabelCtrl = null;
@@ -871,9 +866,6 @@
                 // ƒtƒH�[ƒ€‚ªClose‚³‚ê‚Ä‚¢‚È‚¯‚ê‚ÎƒNƒ��[ƒY‚·‚é
                 TerminatingProcess();
 
-                // �³”F�ó‹µˆê——‚ª•\Ž¦‚³‚ê‚Ä‚¢‚ê‚ÎƒNƒ��[ƒY‚·‚é
-                if (m_frmAuthorizerList != null) m_frmAuthorizerList.Close();
-
                 // �I—¹ƒ{ƒ^ƒ“‚ªON‚È‚ç‚Î‘Oƒvƒ�ƒZƒX‚É–ß‚é
                 if (m_CloseingProcessOn) ClsExcute.BackProcess();
             }
@@ -1028,39 +1020,6 @@
         }
         #endregion
 
-        #region �³”FŽÒˆê——ƒNƒ��[ƒY
-        /// <summary>
-        /// �³”FŽÒˆê——‚ÌƒNƒ��[ƒY‚ðŽæ“¾‚·‚é
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmApprovalAuthorizerList_FormClosed(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                this.Activate();
-
-                // �³”F‰æ–Ê‹N“®ƒtƒ‰ƒOŽæ“¾
-                bool bApprovalExecute = m_frmAuthorizerList.ExecApprovalScreen;
-
-                // ƒnƒ“ƒhƒ‹ƒNƒŠƒA
-                m_frmAuthorizerList.Dispose(); m_frmAuthorizerList = null;
-
-                // �³”F‰æ–Ê‹N“®‚ª–³‚¢�ê�‡
-                if (!bApprovalExecute) return;
-
-                // �I—¹�ˆ—�OFF
-                m_CloseingProcessOn = false;
-                // Ž©ƒtƒH�[ƒ€�I—¹
-                this.Close();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region ƒZƒ‹‚ÌƒL�[ƒ_ƒEƒ“
         /// <summary>
         /// ƒZƒ‹‚ÌƒL�[ƒ_ƒEƒ“�ˆ—�
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 293)
@@ -3190,7 +3190,8 @@
                 // æ‹…å½“å��è¡¨ç¤º
                 RowData[(int)GridColumn.ItemName] = ItemText;
                 // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ä»¥å¤–ã�¯èª¬æ˜Žæ–‡ã‚’è¡¨ç¤º
-                RowData[(int)GridColumn.TextName] = Content;
+                if (CheckLeaderOrUser())
+                    RowData[(int)GridColumn.TextName] = Content;
 
                 // ç·�é‡‘é¡�ã‚’è¡¨ç¤º
                 RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,#");
@@ -4459,6 +4460,7 @@
                         NewRec.SalaryFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.SalaryFlg].Value);         // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
                         NewRec.SalaryDays = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.SalaryDays].Value);       // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
                         NewRec.OperatingFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.OperatingFlg].Value);   // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
+                        NewRec.SecondString = string.Empty;                                                             // çµ¦æ–™è¡Œã�®é‡‘é¡�ã�¯ç™»éŒ²ã�—ã�ªã�„
                         break;
                     default:
                         NewRec.SalaryFlg = 0;       // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
@@ -6245,7 +6247,7 @@
                     GridRow.Cells[(int)GridColumn.GroupCount].Value = GroupNo;
                     GridRow.Cells[(int)GridColumn.ItemName].Value = DetailRec.FirstString;
                     GridRow.Cells[(int)GridColumn.TextName].Value = DetailRec.SecondString;
-                    GridRow.Cells[(int)GridColumn.CompanyCode].Value = DetailRec.CompanyType;
+                    GridRow.Cells[(int)GridColumn.CompanyType].Value = DetailRec.CompanyType;
                     GridRow.Cells[(int)GridColumn.CompanyCode].Value = DetailRec.CompanyCode;
                     GridRow.Cells[(int)GridColumn.CompanyName].Value = DetailRec.CompanyName;
                     GridRow.Cells[(int)GridColumn.EstimatePrice].Value = DetailRec.EstimatePrice.ToString("#,0");
@@ -6454,8 +6456,14 @@
         /// <returns></returns>
         private bool SetAddData_WorkingValue()
         {
+            IOConstructionBudget BudgetDB = new IOConstructionBudget();
             try
             {
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(BudgetDB.CreatePrimarykeyString(m_AddingConstrCode));
+                ConstructionBudget BudgetRec = new ConstructionBudget();
+                if (!BudgetDB.SelectAction(strSQL.ToString(), ref BudgetRec)) return false;
+
                 int BlockNo = (int)DataGroup.TransportationCosts + 1;
                 int icnt = 1;
                 // ã‚°ãƒ«ãƒ¼ãƒ—å��è¡¨ç¤º
@@ -6462,11 +6470,11 @@
                 CreateTitleRow(BlockNo, s_PersonnelExpensesGroup);
 
                 // æŒ‡å°Žå“¡çµ¦ä¸Ž
-                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.InstructorCosts, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.InstructorCosts, icnt++, BudgetRec)) return false;
                 // å‰¯æ‹…å½“è€…çµ¦ä¸Ž
-                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.AssistantCosts, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.AssistantCosts, icnt++, BudgetRec)) return false;
                 // æ‹…å½“è€…çµ¦ä¸ŽçµŒè²»
-                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++, BudgetRec)) return false;
 
                 return true;
             }
@@ -6475,6 +6483,10 @@
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
+            finally
+            {
+                BudgetDB.close(); BudgetDB = null;
+            }
         }
         #endregion
 
@@ -6483,19 +6495,20 @@
         /// ãƒ‡ãƒ¼ã‚¿è¿½åŠ ï¼šäººä»¶è²»ã‚’è¿½åŠ 
         /// </summary>
         /// <returns></returns>
-        private bool SetAddData_AddWorkingRow(int BlockNo, int GroupNo, int DataNo)
+        private bool SetAddData_AddWorkingRow(int BlockNo, int GroupNo, int DataNo, ConstructionBudget BudgetRec)
         {
             IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
             try
             {
                 // å·¥äº‹äºˆç®—æ›¸æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ã‚’èª­ã�¿è¾¼ã‚€
-                string strSQL = DetailDB.CreatePrimarykeyString(m_AddingConstrCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0}", GroupNo);
-                strSQL += " ORDER BY LineCount ASC";
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(DetailDB.CreatePrimarykeyString(m_AddingConstrCode));
+                strSQL.Append(string.Format(" AND GROUPCOUNT = {0}", GroupNo));
+                strSQL.Append(" ORDER BY LineCount ASC");
 
                 ConstructionBudgetDetail DetailRec = new ConstructionBudgetDetail();
                 //ã€€ãƒ‡ãƒ¼ã‚¿ã�Œç„¡ã�‘ã‚Œã�°å¯¾è±¡å¤–
-                if (!DetailDB.SelectAction(strSQL, ref DetailRec)) return true;
+                if (!DetailDB.SelectAction(strSQL.ToString(), ref DetailRec)) return true;
 
                 // å¯¾è±¡è¡Œæ•°å�–å¾—
                 int TargetLine = -1;
@@ -6509,7 +6522,7 @@
                         // æŒ‡å°Žå“¡è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
                         SetFirstStringName(GroupNo, ref DetailRec);
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯æŒ‡å°Žå“¡ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
-                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        //if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
 
                     // å‰¯æ‹…å½“è€…çµ¦ä¸Žè²»ç”¨
@@ -6520,7 +6533,7 @@
                         // å‰¯æ‹…å½“è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
                         SetFirstStringName(GroupNo, ref DetailRec);
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯å‰¯æ‹…å½“è€…ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
-                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        //if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
 
                     // æ‹…å½“è€…çµ¦ä¸Žè²»ç”¨
@@ -6531,7 +6544,7 @@
                         // æ‹…å½“è€…è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
                         SetFirstStringName(GroupNo, ref DetailRec);
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯æ‹…å½“è€…ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
-                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        //if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
                     default:
                         // ã��ã�®ä»–ã�®é …ç›®ï¼ˆã�“ã�“ã�«ã�¯æ�¥ã�ªã�„ã�Œå¿µã�®ã�Ÿã‚�ï¼‰
@@ -6555,6 +6568,31 @@
                     }
                 }
 
+                // çµ¦ä¸ŽåŒºåˆ†æƒ…å ±å�–å¾—
+                int nSalaryFlg = (int)CommonDefine.SalaryDevision.All;
+                int nSalaryDays = 0;
+                switch (GroupNo)
+                {
+                    // æŒ‡å°Žå“¡è²»ç”¨
+                    case (int)FrmConstructionBudget.DataGroup.InstructorCosts:
+                        nSalaryFlg = BudgetRec.I_SalaryFlg;
+                        nSalaryDays = BudgetRec.I_SalaryDays;
+                        break;
+                    // å‰¯æ‹…å½“è€…çµ¦ä¸Žè²»ç”¨
+                    case (int)FrmConstructionBudget.DataGroup.AssistantCosts:
+                        nSalaryFlg = BudgetRec.A_SalaryFlg;
+                        nSalaryDays = BudgetRec.A_SalaryDays;
+                        break;
+                    // æ‹…å½“è€…çµ¦ä¸Žè²»ç”¨
+                    case (int)FrmConstructionBudget.DataGroup.PayrollExpenses:
+                        nSalaryFlg = BudgetRec.SalaryFlg;
+                        nSalaryDays = BudgetRec.SalaryDays;
+                        break;
+                    default:
+                        // ã��ã�®ä»–ã�®é …ç›®ï¼ˆã�“ã�“ã�«ã�¯æ�¥ã�ªã�„ã�Œå¿µã�®ã�Ÿã‚�ï¼‰
+                        break;
+                }
+
                 // ãƒ‡ãƒ¼ã‚¿è¡Œç�¾ç•ªå�·å�–å¾—
                 int FluctuationNo = (int)ConstructionLedgerDetail.FlucFlgDef.Fluctuates;
 
@@ -6561,6 +6599,11 @@
                 if (bExist)
                 {
                     DataGridViewRow RowData = dgv.Rows[TargetLine];
+
+                    RowData.Cells[(int)GridColumn.SalaryFlg].Value = nSalaryFlg;
+                    RowData.Cells[(int)GridColumn.SalaryDays].Value = nSalaryDays;
+                    RowData.Cells[(int)GridColumn.SourceCode].Value = m_AddingConstrCode;
+
                     int EstimatePrice = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.EstimatePrice].Value) + (int)DetailRec.EstimatePrice;
                     int ExecutionAmount = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.ExecPrice].Value) + (int)DetailRec.ExecutionAmount;
 
@@ -6585,6 +6628,9 @@
                     RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
                     RowData[(int)GridColumn.IndependentFlg] = "1";
                     RowData[(int)GridColumn.FluctuationFlg] = FluctuationNo;
+                    RowData[(int)GridColumn.SalaryFlg] = nSalaryFlg;
+                    RowData[(int)GridColumn.SalaryDays] = nSalaryDays;
+                    RowData[(int)GridColumn.SourceCode] = m_AddingConstrCode;
 
                     // å�ˆè¨ˆæ¬„ä½�ç½®å�–å¾—
                     int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 293)
@@ -318,7 +318,7 @@
                                             OrderRec.SeqNo,
                                             string.Format("{0}-{1}", OrderRec.ConstructionCode, OrderRec.SeqNo.ToString("000")),    // ç™ºæ³¨ç•ªå�·ã‚»ãƒƒãƒˆ
                                             SubConRec.CompanyName,                                                                  // ç™ºæ³¨å…ˆä¼šç¤¾å��
-                                            OrderRec.CreateDate.ToShortDateString(),                                              // æ³¨æ–‡æ›¸ä½œæˆ�æ—¥
+                                            OrderRec.CreateDate.ToShortDateString(),                                                // æ³¨æ–‡æ›¸ä½œæˆ�æ—¥
                                             OrderRec.OrderPrice.ToString("#,0"),                                                    // ç™ºæ³¨é‡‘é¡�
                                             PurchaseString,                                                                         // æ”¯æ‰•æ�¡ä»¶
                                             true);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(revision 293)
@@ -198,6 +198,8 @@
             ShohiZeiRitu,
             ConstructionLedgerLineNo,
             ConstructionLedgerColNo,
+            DepartmentCode,
+            ConstructionPerson,
         }
         #endregion
 
@@ -229,30 +231,71 @@
             KojiSannhaiZei,
             CnstrPrice,
             CNSTRPRICEEXIST,
-            ApprovalPersonCode,
-            TantoNM,
-            ApprovalDate,
+            ApprovalPersonCode,         // �\�¿’S“–ŽÒ
+            TantoNM,                    // �\�¿’S“–ŽÒ–¼
+            ApprovalDate,               // �\�¿“ú•t
             ApprovalEndFlg,
             SalesPersonCode,
             ConstructionPersonCode,     // �HŽ–’S“–ŽÒ
-            ConstrSubPersonCode,
-            ConstructionInstructor,
+            ConstrSubPersonCode,        // •›’S“–ŽÒ
+            ConstructionInstructor,     // Žw“±ˆõ
             DepartmentCode,             // �HŽ–’S“–ŽÒ•”��ƒR�[ƒh
             PurchaseOrderMailingDate,   // ’�•¶�‘—X‘—“ú
             PurchaseOrderReturnDate,    // ’�•¶�‘•Ô‘—“ú
             PaData,                     // —\ŽZ�‘
             ConstructionLedgerLineNo,   // �HŽ–�Ú�×‘ä’ �s”Ô�†
-            ConstructionLedgerRowNo,    // �HŽ–�Ú�×‘ä’ —ñ”Ô�†
+            ConstructionLedgerColNo,    // �HŽ–�Ú�×‘ä’ —ñ”Ô�†
             DetailName,                 // –¾�×�s–¼�Ì
+            PApp_PersonCode,            // ’S“–ŽÒ�³”Fƒf�[ƒ^�F�\�¿’S“–ŽÒƒR�[ƒh
+            PApp_ApprovalCode,          // ’S“–ŽÒ�³”Fƒf�[ƒ^�F�³”F‹@”\ƒR�[ƒh
+            PApp_OrderNo,               // ’S“–ŽÒ�³”Fƒf�[ƒ^�FŽó•t”Ô�†
+            PApp_PersonCodeApproval,    // ’S“–ŽÒ�³”Fƒf�[ƒ^�F�³”FŽÒƒR�[ƒh
+            PApp_ApprovalStatus,        // ’S“–ŽÒ�³”Fƒf�[ƒ^�F�³”F�ó‘ÔƒR�[ƒh
+            PApp_ApprovalDate,          // ’S“–ŽÒ�³”Fƒf�[ƒ^�F�³”F“ú•t
+            AppM_ApprovalCode,          // �³”FŒo˜Hƒ}ƒXƒ^�F�³”F‹@”\ƒR�[ƒh
+            AppM_DepartmentCode,        // �³”FŒo˜Hƒ}ƒXƒ^�F•”��ƒR�[ƒh
+            AppM_SeqNo,                 // �³”FŒo˜Hƒ}ƒXƒ^�F�³”F�‡�˜
+            AppM_DisplayOrder,          // �³”FŒo˜Hƒ}ƒXƒ^�F•\Ž¦�‡
+            AppM_ApprovalPerson,        // �³”FŒo˜Hƒ}ƒXƒ^�F�³”FŽÒƒR�[ƒh
+            AppPName_PersonName,        // ’S“–ŽÒƒ}ƒXƒ^�F�³”FŽÒ–¼
+            AppM_ApprovalAuthority,     // �³”FŒo˜Hƒ}ƒXƒ^�F�Å�I�³”FŽÒ‹æ•ª
         }
         #endregion
 
+        #region ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg’è‹`
         /// <summary>
-        /// ‘ä’ ƒnƒ“ƒhƒ‹
+        /// ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg’è‹`
         /// </summary>
-        FrmConstructionLedger m_FrmLedger = null;
+        private enum EventDef
+        {
+            Department = 1,
+            Person = 1 << 1,
+        }
+        #endregion
 
+        #region ƒwƒbƒ_�[•”•\Ž¦�§Œä
         /// <summary>
+        /// ƒwƒbƒ_�[•”•\Ž¦�§Œä’è‹`
+        /// </summary>
+        private enum HeaderCtrlDef
+        {
+            /// <summary>
+            /// 0:•”��–³�E’S“–ŽÒ–³
+            /// </summary>
+            Type1 = 0,
+            /// <summary>
+            /// 1:•”��–³�E’S“–ŽÒ•\Ž¦
+            /// </summary>
+            Type2,
+            /// <summary>
+            /// 2:‘S•”•\Ž¦
+            /// </summary>
+            Type3,
+        }
+        #endregion
+
+        #region �³”FŒn’è�”
+        /// <summary>
         /// �³”Fƒuƒ�ƒbƒN‚ÌƒJƒ‰ƒ€�”
         /// </summary>
         private int s_ShoninBlockCnt = 5;
@@ -272,8 +315,14 @@
         /// �³”FŽÒ�‡�˜ƒJƒ‰ƒ€ƒIƒtƒZƒbƒg
         /// </summary>
         private int s_ShoninNoCnt = 4;
+        #endregion
 
         /// <summary>
+        /// ‘ä’ ƒnƒ“ƒhƒ‹
+        /// </summary>
+        FrmConstructionLedger m_FrmLedger = null;
+
+        /// <summary>
         /// •s–¾•¶Žš—ñ
         /// </summary>
         private const string s_UnknownString = "•s–¾";
@@ -355,6 +404,21 @@
         private int m_Select_TargetDate = 0;
 
         /// <summary>
+        /// ƒ�ƒjƒ…�[‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_FirstFlg = true;
+
+        /// <summary>
+        /// �³”Fˆê——‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ�ƒ^‘Î�ÛŒŽ
+        /// </summary>
+        private int m_ParaTargetDate = 0;
+
+        /// <summary>
+        /// Žx•¥’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        private int m_PaymentPersonCode = 0;
+        
+        /// <summary>
         /// •\Ž¦Žž‚Ìƒf�[ƒ^Œ��”
         /// </summary>
         private int m_Select_DataCount = 0;
@@ -389,6 +453,39 @@
         }
         #endregion
 
+        #region ƒ�ƒjƒ…�[‹N“®ƒtƒ‰ƒO
+        /// <summary>
+        /// ƒ�ƒjƒ…�[‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        public bool FirstFlg
+        {
+            get { return m_FirstFlg; }
+            set { m_FirstFlg = value; }
+        }
+        #endregion
+
+        #region �³”Fˆê——‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ�ƒ^‘Î�ÛŒŽ
+        /// <summary>
+        /// �³”Fˆê——‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ�ƒ^‘Î�ÛŒŽ
+        /// </summary>
+        public int ParaTargetDate
+        {
+            get { return m_ParaTargetDate; }
+            set { m_ParaTargetDate = value; }
+        }
+        #endregion
+
+        #region Žx•¥’S“–ŽÒƒR�[ƒh
+        /// <summary>
+        /// Žx•¥’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        public int PaymentPersonCode
+        {
+            get { return m_PaymentPersonCode; }
+            set { m_PaymentPersonCode = value; }
+        }
+        #endregion
+
         #region ‹N“®ƒtƒ‰ƒO
         /// <summary>
         /// ‹N“®ƒtƒ‰ƒO
@@ -447,6 +544,7 @@
         // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
         #endregion
 
+        #region �I—¹ƒ{ƒ^ƒ“‰Ÿ‰ºƒtƒ‰ƒO
         /// <summary>
         /// �I—¹ƒ{ƒ^ƒ“‰Ÿ‰ºƒtƒ‰ƒO
         /// </summary>
@@ -455,6 +553,7 @@
             get { return m_CloseingProcessOn; }
             set { m_CloseingProcessOn = value; }
         }
+        #endregion
 
         #endregion
 
@@ -487,92 +586,109 @@
         /// <param name="e"></param>
         private void FrmRequestSummaryList_Load(object sender, EventArgs e)
         {
-            // ’S“–ŽÒ�³”F�î•ñ‚ÌŽæ“¾
-            if (ClsExcute.ProcControlPara.Count > 0)
+            try
             {
-                int cnt = ClsExcute.ProcControlPara.Count - 1;
-                if ((ClsExcute.ProcControlPara[cnt].ArrayParameter != null)
-                    && (ClsExcute.ProcControlPara[cnt].ArrayParameter.Count > 0))
-                {
-                    ArrayList obj = ClsExcute.ProcControlPara[cnt].ArrayParameter[0];
-                    if ((obj[0] is PaymentApprovalInfo) == true)
-                    {
-                        m_PaInfo = (PaymentApprovalInfo)obj[0];
-                    }
-                    else
-                    {
-                        m_PaInfo = null;
-                    }
-                }
-            }
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
+                LoadTargetMonth(ref m_Payday);
 
-            // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
-            LoadTargetMonth(ref m_Payday);
+                // ’S“–ŽÒ�³”F�î•ñ‚ÌŽæ“¾
+                int DepCode = 0;
+                int PersonCode = 0;
+                //if (ClsExcute.ProcControlPara.Count > 0)
+                //{
+                //    int cnt = ClsExcute.ProcControlPara.Count - 1;
+                //    if ((ClsExcute.ProcControlPara[cnt].ArrayParameter != null)
+                //        && (ClsExcute.ProcControlPara[cnt].ArrayParameter.Count > 0))
+                //    {
+                //        ArrayList obj = ClsExcute.ProcControlPara[cnt].ArrayParameter[0];
+                //        if ((obj[0] is PaymentApprovalInfo) == true)
+                //        {
+                //            m_PaInfo = (PaymentApprovalInfo)obj[0];
+                //            PersonCode = m_PaInfo.ApprovalPerson;
+                //            DepCode = GetDepartment(PersonCode);
+                //        }
+                //        else
+                //        {
+                //            m_PaInfo = null;
+                //        }
+                //    }
+                //}
 
-            // ƒ†�[ƒUŒ ŒÀ�Ý’è
-            ClsSecurityPermission.SetUserType(m_UserInfo);
+                // ƒpƒ‰ƒ��[ƒ^�‰ŠúƒZƒbƒg
+                SetInitParametar(ref DepCode, ref PersonCode);
 
-            // �‰Šú•\Ž¦
-            InitDataLoad();
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
+                InitCombBox(DepCode, PersonCode);
+                
+                // ƒ†�[ƒUŒ ŒÀ�Ý’è
+                ClsSecurityPermission.SetUserType(m_UserInfo);
 
-            // •\Ž¦ƒXƒ^ƒCƒ‹‚Ì•Ï�X�i‹ÆŽÒ�j
-            InitDisplayStyle(dgvCompany);
+                // �‰Šú•\Ž¦
+                InitDataLoad();
 
-            // •\Ž¦ƒXƒ^ƒCƒ‹‚Ì•Ï�X�iŒ»�ê�j
-            InitDisplayStyle(dgvProject);
+                // •\Ž¦ƒXƒ^ƒCƒ‹‚Ì•Ï�X�i‹ÆŽÒ�j
+                InitDisplayStyle(dgvCompany);
 
-            // Œ»�ê’S“–ŽÒ‚Ì�ê�‡‚Í�A�‰Šú•\Ž¦‚ÍŒ»�ê’PˆÊ
-            if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.NormalAuthority)
-            {
-                rdbProject.Checked = true;
-                rdbCompany.Checked = false;
-            }
-            // ‘�–±’S“–‚Í�A�‰Šú•\Ž¦‚Í‹ÆŽÒ’PˆÊ
-            if (m_UserInfo.m_GeneralAffairsFlg == (int)SecurityMaster.GeneAffDef.GeneralDep)
-            {
-                rdbProject.Checked = false;
-                rdbCompany.Checked = true;
-            }
+                // •\Ž¦ƒXƒ^ƒCƒ‹‚Ì•Ï�X�iŒ»�ê�j
+                InitDisplayStyle(dgvProject);
 
-            showView();
-            SetColumnID();
-            controlButton();
+                // Œ»�ê’S“–ŽÒ‚Ì�ê�‡‚Í�A�‰Šú•\Ž¦‚ÍŒ»�ê’PˆÊ
+                if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.NormalAuthority)
+                {
+                    rdbProject.Checked = true;
+                    rdbCompany.Checked = false;
+                }
+                // ‘�–±’S“–‚Í�A�‰Šú•\Ž¦‚Í‹ÆŽÒ’PˆÊ
+                if (m_UserInfo.m_GeneralAffairsFlg == (int)SecurityMaster.GeneAffDef.GeneralDep)
+                {
+                    rdbProject.Checked = false;
+                    rdbCompany.Checked = true;
+                }
 
-            // •\Ž¦
-            DispGridData();
+                showView();
+                SetColumnID();
+                controlButton();
 
-            // *-----* �ˆ—�ˆÚ“®ƒ{ƒ^ƒ“�Ý’è *-----*
-            CreateProcessContextMenu();
-            // *-----* �ˆ—�ˆÚ“®ƒ{ƒ^ƒ“�Ý’è *-----*
+                // •\Ž¦
+                DispGridData();
 
-            // �\�¿�E�³”F•\Ž¦�ˆ—�
-            InitApprovalDisplay();
+                // *-----* �ˆ—�ˆÚ“®ƒ{ƒ^ƒ“�Ý’è *-----*
+                CreateProcessContextMenu();
+                // *-----* �ˆ—�ˆÚ“®ƒ{ƒ^ƒ“�Ý’è *-----*
 
-            // �³”F‰æ–Ê‚Ì�u�³”F‘Î�Ûƒf�[ƒ^‚ðŒ©‚é�v‚©‚ç‚Ì‹N“®Žž‚Í�³”Fƒ{ƒ^ƒ“‚Ì•\Ž¦‚ª‚ ‚é
-            bool bApproval = ClsApprovalPermission.ExceApprovalScreen((int)ClsExcute.SubFormExecuteNo.ApprovalPerson);
-            if (bApproval)
-            {
-                // �³”F‘Î�ÛƒR�[ƒh‚ðŽæ“¾‚·‚é
-                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals(s_MyProcessName[m_Labourkind])).Key;
-                // �HŽ–ˆÄŒ�‚ÌŠÇ—�•”��‚ðŽæ“¾‚·‚é
-                //int DepartmentCode = ClsApprovalPermission.GetFromPersonAndApprovalTheDepartment(m_PersonCode, ApprovalCode, m_CreateDate, m_SeqNo);
-                int DepartmentCode = CommonMotions.LoginUserData.DepartmentCode;
-                // ˆÄŒ�‚É‘Î‚µ‚Ä�\�¿‚ª‚³‚ê‚Ä‚¢‚é‚©‚ðŠm”F‚·‚é
-                bool Pettition = false;
-                if ((m_PaInfo is PaymentApprovalInfo))
+                // �\�¿�E�³”F•\Ž¦�ˆ—�
+                InitApprovalDisplay();
+
+                // �³”F‰æ–Ê‚Ì�u�³”F‘Î�Ûƒf�[ƒ^‚ðŒ©‚é�v‚©‚ç‚Ì‹N“®Žž‚Í�³”Fƒ{ƒ^ƒ“‚Ì•\Ž¦‚ª‚ ‚é
+                bool bApproval = ClsApprovalPermission.ExceApprovalScreen((int)ClsExcute.SubFormExecuteNo.ApprovalPerson);
+                if (bApproval)
                 {
-                    Pettition = ClsApprovalPermission.CheckPersonPetition2(m_PaInfo.ApprovalPerson, ApprovalCode, m_PaInfo.ApprovalDate, (int)CommonDefine.s_Default_OrderNo);
+                    // �³”F‘Î�ÛƒR�[ƒh‚ðŽæ“¾‚·‚é
+                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals(s_MyProcessName[m_Labourkind])).Key;
+                    // �HŽ–ˆÄŒ�‚ÌŠÇ—�•”��‚ðŽæ“¾‚·‚é
+                    //int DepartmentCode = ClsApprovalPermission.GetFromPersonAndApprovalTheDepartment(m_PersonCode, ApprovalCode, m_CreateDate, m_SeqNo);
+                    int DepartmentCode = CommonMotions.LoginUserData.DepartmentCode;
+                    // ˆÄŒ�‚É‘Î‚µ‚Ä�\�¿‚ª‚³‚ê‚Ä‚¢‚é‚©‚ðŠm”F‚·‚é
+                    bool Pettition = false;
+                    if ((m_PaInfo is PaymentApprovalInfo))
+                    {
+                        Pettition = ClsApprovalPermission.CheckPersonPetition2(m_PaInfo.ApprovalPerson, ApprovalCode, m_PaInfo.ApprovalDate, (int)CommonDefine.s_Default_OrderNo);
+                    }
+                    // ƒ�ƒOƒCƒ“ŽÒ‚ª�³”FŽÒ‚©‚ðŠm”F‚·‚é
+                    bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
+                    // �\�¿’†‚Åƒ�ƒOƒCƒ“ŽÒ‚ª�³”FŽÒ‚Ì�ê�‡‚Í�³”Fƒ{ƒ^ƒ“‚ð•\Ž¦‚·‚é
+                    if (Pettition && Approvaler)
+                    {
+                        pnlApprovalButton.Visible = true;
+                    }
                 }
-                // ƒ�ƒOƒCƒ“ŽÒ‚ª�³”FŽÒ‚©‚ðŠm”F‚·‚é
-                bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
-                // �\�¿’†‚Åƒ�ƒOƒCƒ“ŽÒ‚ª�³”FŽÒ‚Ì�ê�‡‚Í�³”Fƒ{ƒ^ƒ“‚ð•\Ž¦‚·‚é
-                if (Pettition && Approvaler)
-                {
-                    pnlApprovalButton.Visible = true;
-                }
+
+                m_initDataLoad = false;
             }
-
-            m_initDataLoad = false;
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -688,7 +804,7 @@
                 if (!DataEntryProcess()) return;
 
                 // ƒf�[ƒ^•\Ž¦
-                if (!DispGridData()) return;
+                DispGridData();
 
                 // �I—¹ƒ�ƒbƒZ�[ƒW•\Ž¦
                 string strProcName = string.Empty;
@@ -701,6 +817,7 @@
                     strProcName = "‹ÆŽÒŽx•¥ƒf�[ƒ^";
                 }
                 CommonMotions.EntryEndMessage(strProcName);
+
             }
             catch (System.Exception ex)
             {
@@ -811,16 +928,9 @@
         /// <param name="e"></param>
         private void btnAddProject_Click(object sender, EventArgs e)
         {
-            DataGridView dgv = getShowingView();
-
-            // ‘I‘ð‚³‚ê‚Ä‚¢‚È‚¢
-            if (dgv.CurrentRow == null) return;
-            if (dgv.Rows.Count == 0) return;
-            int nRowType = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.RowType].Value);
-            if (nRowType != 0) return;
-
             // Œ»�ê‘I‘ð
-            ShowSubLocationDiag();
+            ShowProjectDiag();
+            controlButton_DataCount();
         }
         #endregion
 
@@ -871,32 +981,50 @@
         private void DataGridView_CellValueChanged(object sender, DataGridViewCellEventArgs e)
         {
             DataGridView dgv = (DataGridView)sender;
+            DataGridViewRow CurRow = dgv.CurrentRow;
 
-            if (dgv.CurrentRow == null ||
-                (dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == (int)GoukeiRows.�¬Œv)
-                                                    .ToArray()
-                                                    .Count() == 0))
-                return;
+            // ˆê’UƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð–³Œø‚É‚·‚é
+            dgv.CellValueChanged -= DataGridView_CellValueChanged;
+            try
+            {
+                if (CurRow == null) return;
 
-            // ‹¦—Í‹à—L–³ƒJƒ‰ƒ€ˆÈŠO‚Í�ˆ—�‚µ‚È‚¢
-            if (e.ColumnIndex != (int)DispColumn.KyoryokuUmu) return;
+                // •Ï�Xƒtƒ‰ƒO
+                CurRow.Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
 
-            //—ñ‚ÌƒCƒ“ƒfƒbƒNƒX‚ðŠm”F‚·‚é
-            int Code_Column = 0;
-            if (dgvCompany.Visible == true)
+                if (dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == (int)GoukeiRows.�¬Œv)
+                                                        .ToArray()
+                                                        .Count() == 0) return;
+
+                // ‹¦—Í‹à—L–³ƒJƒ‰ƒ€ˆÈŠO‚Í�ˆ—�‚µ‚È‚¢
+                if (e.ColumnIndex != (int)DispColumn.KyoryokuUmu) return;
+
+                //—ñ‚ÌƒCƒ“ƒfƒbƒNƒX‚ðŠm”F‚·‚é
+                int Code_Column = 0;
+                if (dgvCompany.Visible == true)
+                {
+                    Code_Column = (int)DispColumn_Company.SubConstractorCode;
+                }
+                else
+                {
+                    Code_Column = (int)DispColumn_Project.GengaCode;
+                }
+
+                // ‹¦—Í‹à�Ý’è
+                SetKyoryokukin(dgv, e.RowIndex, Code_Column);
+
+                // �‡Œv�s
+                setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+            }
+            catch (Exception ex)
             {
-                Code_Column = (int)DispColumn_Company.SubConstractorCode;
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            else
+            finally
             {
-                Code_Column = (int)DispColumn_Project.GengaCode;
+                // ƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð—LŒø‚É‚·‚é
+                dgv.CellValueChanged += DataGridView_CellValueChanged;
             }
-
-            // ‹¦—Í‹à�Ý’è
-            SetKyoryokukin(dgv, e.RowIndex, Code_Column);
-
-            // �‡Œv�s
-            setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
         }
         #endregion
 
@@ -931,21 +1059,19 @@
 
             DataGridView dgv = (DataGridView)sender;
 
-            //Œ»�ê–¢“ü—Í‚ÍŒ»�ê‚É�¿‹�‹àŠz“ü—Í‚³‚¹‚È‚¢
-            if (CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[m_Genba_Column].Value) == 0 &&
-                e.ColumnIndex >= (int)DispColumn.KojiSeikyu && e.ColumnIndex <= (int)DispColumn.KyoryokuUmu)
-            {
-                e.Cancel = true;
-                return;
-            }
+            // “ü—ÍƒJƒ‰ƒ€ˆÈŠO‚Í�ˆ—�‚µ‚È‚¢
+            if (e.ColumnIndex < (int)DispColumn.SomuSeikyu) return;
+            if ((int)DispColumn.KyoryokuUmu <= e.ColumnIndex) return;
 
-            if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu &&
-                e.ColumnIndex < (int)DispColumn.KyoryokuUmu)
-            {
-                dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value);
-                dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+            ////Œ»�ê–¢“ü—Í‚ÍŒ»�ê‚É�¿‹�‹àŠz“ü—Í‚³‚¹‚È‚¢
+            //if (CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[m_Genba_Column].Value) == 0)
+            //{
+            //    e.Cancel = true;
+            //    return;
+            //}
 
-            }
+            dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value);
+            dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
         }
         #endregion
 
@@ -960,132 +1086,99 @@
             DataGridView dgv = (DataGridView)sender;
             GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
 
-            if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu &&
-                e.ColumnIndex < (int)DispColumn.KyoryokuUmu &&
-                TargetRowtype < GoukeiRows.�¬Œv)
-            {
-                int Code_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorCode : (int)DispColumn_Project.GengaCode;
+            // �s�E—ñ‚ª”ÍˆÍŠO‚Í�ˆ—�‚µ‚È‚¢
+            if (e.ColumnIndex < (int)DispColumn.SomuSeikyu) return;
+            if ((int)DispColumn.KyoryokuUmu < e.ColumnIndex) return;
+            if (TargetRowtype >= GoukeiRows.�¬Œv) return;
 
+            int Code_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorCode : (int)DispColumn_Project.GengaCode;
 
-                // �¬ŒvŽZ�o
-                ShoukeiSanshutu(e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+            // �¬ŒvŽZ�o
+            ShoukeiSanshutu(e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
 
-                // �¿‹�‹àŠz˜AŒg
-                if (e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+            // �¿‹�‹àŠz˜AŒg
+            if (e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+            {
+                if (m_FrmLedger != null)
                 {
-                    if (m_FrmLedger != null)
+                    if (m_FrmLedger.AddingRequestPrice != CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value))
                     {
-                        if (m_FrmLedger.AddingRequestPrice != CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value))
-                        {
-                            m_FrmLedger.AddingRequestPrice = CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value);
-                        }
+                        m_FrmLedger.AddingRequestPrice = CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value);
                     }
-
                 }
 
-                // ŽŸ‰ñŒJ‰z
-                if (e.ColumnIndex == (int)DispColumn.SomuSeikyu ||
-                    e.ColumnIndex == (int)DispColumn.KojiSeikyu ||
-                    e.ColumnIndex == (int)DispColumn.KojiNebiki ||
-                    e.ColumnIndex == (int)DispColumn.KojiSousai)
-                {
-                    dgv[(int)DispColumn.JikaiKurikosi, e.RowIndex].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.SomuSeikyu, e.RowIndex].Value)
-                                                                        - (CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSeikyu, e.RowIndex].Value)
-                                                                        + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiNebiki, e.RowIndex].Value)
-                                                                        + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSousai, e.RowIndex].Value));
-                }
+            }
 
-                // ‹¦—Í‹à
-                if (e.ColumnIndex == (int)DispColumn.KojiSeikyu)
-                {
-                    SetKyoryokukin(dgv, e.RowIndex, Code_Column);
-                }
+            // ŽŸ‰ñŒJ‰z
+            if (e.ColumnIndex == (int)DispColumn.SomuSeikyu ||
+                e.ColumnIndex == (int)DispColumn.KojiSeikyu ||
+                e.ColumnIndex == (int)DispColumn.KojiNebiki ||
+                e.ColumnIndex == (int)DispColumn.KojiSousai)
+            {
+                dgv[(int)DispColumn.JikaiKurikosi, e.RowIndex].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.SomuSeikyu, e.RowIndex].Value)
+                                                                    - (CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSeikyu, e.RowIndex].Value)
+                                                                    + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiNebiki, e.RowIndex].Value)
+                                                                    + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSousai, e.RowIndex].Value));
+            }
 
-                // �Á”ï�Å
-                if (e.ColumnIndex == (int)DispColumn.SomuSeikyu || e.ColumnIndex == (int)DispColumn.KojiSeikyu)
-                {
-                    // �Á”ï�Å�sŒŸ�õ
-                    int ZeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�Á”ï�Å);
+            // ‹¦—Í‹à
+            if (e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+            {
+                SetKyoryokukin(dgv, e.RowIndex, Code_Column);
+            }
 
-                    // �¬Œv�sŒŸ�õ
-                    int ShoukeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�¬Œv);
+            // �Á”ï�Å
+            if (e.ColumnIndex == (int)DispColumn.SomuSeikyu || e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+            {
+                // �Á”ï�Å�sŒŸ�õ
+                int ZeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�Á”ï�Å);
 
-                    if (ShoukeiRowIndex >= 0)
-                    {
-                        //�¦Œã‚É‰ïŽÐ�î•ñ‚©‚çŽæ“¾‚³‚ê‚é                         �@
-                        //dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvDouble(dgv.CurrentRow.Cells[e.ColumnIndex].Value)
-                        //                                        * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
-                        //dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[e.ColumnIndex, ShoukeiRowIndex].Value) * 0.08);
-                        dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[e.ColumnIndex, ShoukeiRowIndex].Value)
-                                                                                        * (CommonMotions.SystemMasterData.ConsumptionTax / 100));
-                    }
-                }
+                // �¬Œv�sŒŸ�õ
+                int ShoukeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�¬Œv);
 
-                // �‚‘¬‘ã
-                if (e.ColumnIndex == (int)DispColumn.SomuKosoku || e.ColumnIndex == (int)DispColumn.KojiKosoku)
+                if (ShoukeiRowIndex >= 0)
                 {
-                    // —ñ�Ý’è
-                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKosoku ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
-
-                    // �‡Œv’l�Ý’è
-                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�‚‘¬‘ã);
+                    //�¦Œã‚É‰ïŽÐ�î•ñ‚©‚çŽæ“¾‚³‚ê‚é                         �@
+                    dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[e.ColumnIndex, ShoukeiRowIndex].Value)
+                                                                                    * (CommonMotions.SystemMasterData.ConsumptionTax / 100));
                 }
+            }
 
+            // �‚‘¬‘ã
+            if (e.ColumnIndex == (int)DispColumn.SomuKosoku || e.ColumnIndex == (int)DispColumn.KojiKosoku)
+            {
+                // —ñ�Ý’è
+                int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKosoku ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
 
-                // ‹à•¨‘ã
-                if (e.ColumnIndex == (int)DispColumn.SomuKanamono || e.ColumnIndex == (int)DispColumn.KojiKanamono)
-                {
-                    // —ñ�Ý’è
-                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKanamono ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
+                // �‡Œv’l�Ý’è
+                SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�‚‘¬‘ã);
+            }
 
-                    // �‡Œv’l�Ý’è
-                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.‹à•¨‘ã);
-                }
 
-                // ŽY”p�Å
-                if (e.ColumnIndex == (int)DispColumn.SomuSannhaiZei || e.ColumnIndex == (int)DispColumn.KojiSannhaiZei)
-                {
-                    // —ñ�Ý’è
-                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuSannhaiZei ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
+            // ‹à•¨‘ã
+            if (e.ColumnIndex == (int)DispColumn.SomuKanamono || e.ColumnIndex == (int)DispColumn.KojiKanamono)
+            {
+                // —ñ�Ý’è
+                int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKanamono ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
 
-                    // �‡Œv’l�Ý’è
-                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.ŽY”p�Å);
-                }
+                // �‡Œv’l�Ý’è
+                SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.‹à•¨‘ã);
+            }
 
-                // �‡Œv�s
-                setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+            // ŽY”p�Å
+            if (e.ColumnIndex == (int)DispColumn.SomuSannhaiZei || e.ColumnIndex == (int)DispColumn.KojiSannhaiZei)
+            {
+                // —ñ�Ý’è
+                int ColIndex = e.ColumnIndex == (int)DispColumn.SomuSannhaiZei ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
 
-                if (!m_initDataLoad) m_bChengeAns = true;
+                // �‡Œv’l�Ý’è
+                SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.ŽY”p�Å);
+            }
 
-                // �V‹K’Ç‰Á ƒZƒ‹‚Ì“à—e•Ï�X‚Å•s–¾�s‚ð�ì�¬‚µ‚È‚¢—l‚É�C�³�i‹ÆŽÒ‚Ì•s–¾�s’Ç‰Á‚Í‹ÆŽÒ’Ç‰Áƒ{ƒ^ƒ“‚Å•s–¾�s‚ð‘�‚â‚·�j
-                //if (dgvCompany.Visible == true && btnAddCompany.Enabled == true &&
-                //    (e.ColumnIndex >= (int)DispColumn.SomuSeikyu && e.ColumnIndex < (int)DispColumn.KojiSeikyu))
-                //{
-                //    int GoukeiSeqNo;
-                //string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => (CommonMotions.cnvInt(x.Cells[Code_Column].Value)
-                //                                                            == CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value))
-                //                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
-                //                                                .Max(x => (string)x.Cells[(int)DispColumn.GoukeiSeqNo].Value.ToString());
-                //    if (cell != null)
-                //    {
-                //        GoukeiSeqNo = CommonMotions.cnvInt(cell);
-                //        if (GoukeiSeqNo == CommonMotions.cnvInt(dgv[(int)DispColumn.GoukeiSeqNo, e.RowIndex].Value) && CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) != 0)
-                //        {
-                //            // ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚ð”²‚¯�o‚µ‚½’¼Œã‚ÉŽÀ�s
-                //            this.BeginInvoke((MethodInvoker)delegate
-                //            {
-                //                int MakeIndex = 0;
-                //                MakeNewRow(CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), "", 0,
-                //                            CommonMotions.cnvInt(dgv[(int)DispColumn.No, e.RowIndex].Value), ref MakeIndex, -1, e.RowIndex + 1);
-                //                dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.CompanyDispOrder, e.RowIndex].Value);
-                //                dgv.Rows[MakeIndex].Cells[m_GoukeiCode_Column + 1].ToolTipText = CommonMotions.cnvString(dgv[m_GoukeiCode_Column + 1, e.RowIndex].ToolTipText);
-                //                ResetNo();
-                //            });
-                //        }
-                //    }
-                //}
+            // �‡Œv�s
+            setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
 
-            }
+            if (!m_initDataLoad) m_bChengeAns = true;
 
         }
         #endregion
@@ -1102,36 +1195,32 @@
 
             try
             {
-                if (dgv.RowCount == 0)
-                    return;
+                if (dgv.RowCount == 0) return;
+                if (e.ColumnIndex < (int)DispColumn.SomuSeikyu) return;
+                if ((int)DispColumn.KyoryokuUmu <= e.ColumnIndex) return;
 
-                if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu && e.ColumnIndex < (int)DispColumn.KyoryokuUmu)
+
+                // ƒ}ƒCƒiƒX’l‚Í�Ô
+                if (CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) < 0)
                 {
+                    dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = Color.Red;
+                }
+                else
+                {
+                    dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+                }
 
-                    // ƒ}ƒCƒiƒX’l‚Í�Ô
-                    if (CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) < 0)
-                    {
-                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = Color.Red;
-                    }
-                    else
-                    {
-                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
-                    }
+                GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
 
-                    GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
-
-                    if (!(TargetRowtype > GoukeiRows.�¬Œv && e.ColumnIndex != (int)DispColumn.SomuSeikyu && e.ColumnIndex != (int)DispColumn.KojiSeikyu))
-                    {
-                        dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value).ToString("#,0");
-                    }
+                if (!(TargetRowtype > GoukeiRows.�¬Œv && e.ColumnIndex != (int)DispColumn.SomuSeikyu && e.ColumnIndex != (int)DispColumn.KojiSeikyu))
+                {
+                    dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value).ToString("#,0");
                 }
-
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-
         }
         #endregion
 
@@ -1200,19 +1289,15 @@
         /// <param name="e"></param>
         private void btnPetition_Click(object sender, EventArgs e)
         {
+            if (GetDispRowCount() < 1) return;
 
-            // ‘I‘ðŒÂ�Š‚ÌŒŸ�o
-            DataGridView dgv = null;
-            if (dgvCompany.Visible == true)         // ‹ÆŽÒ’PˆÊ•\Ž¦
-            {
-                dgv = dgvCompany;
-            }
-            else if (dgvProject.Visible == true)    // Œ»�ê’PˆÊ•\Ž¦
-            {
-                dgv = dgvProject;
-            }
+            // ‘I‘ðƒf�[ƒ^ƒ`ƒFƒbƒN
+            if (!CmbDataSelectCheck()) return;
 
-            if (MessageBox.Show("•\Ž¦‚³‚ê‚Ä‚¢‚éƒf�[ƒ^‚Ì�³”F�\�¿‚ð�s‚¢‚Ü‚·�B", "�³”F�\�¿Šm”F", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+            if (MessageBox.Show("•\Ž¦‚³‚ê‚Ä‚¢‚éƒf�[ƒ^‚Ì�³”F�\�¿‚ð�s‚¢‚Ü‚·�B"
+                                , "�³”F�\�¿Šm”F"
+                                , MessageBoxButtons.YesNo
+                                , MessageBoxIcon.Question) != DialogResult.Yes) return;
 
             // �³”F�\�¿�ˆ—�
             PetitionProcess();
@@ -1227,23 +1312,13 @@
         /// <param name="e"></param>
         private void btnApproval_Click(object sender, EventArgs e)
         {
-            // ‘I‘ðŒÂ�Š‚ÌŒŸ�o
-            DataGridView dgv = null;
-            DataGridViewCell SelectCell = null;
-            if (dgvCompany.Visible == true)         // ‹ÆŽÒ’PˆÊ•\Ž¦
-            {
-                dgv = dgvCompany;
-            }
-            else if (dgvProject.Visible == true)    // Œ»�ê’PˆÊ•\Ž¦
-            {
-                dgv = dgvProject;
-            }
-            foreach (DataGridViewCell c in dgv.SelectedCells)
-            {
-                SelectCell = c;
-            }
+            // ‘I‘ðƒf�[ƒ^ƒ`ƒFƒbƒN
+            if (!CmbDataSelectCheck()) return;
 
-            if (MessageBox.Show("‘I‘ð‚³‚ê‚Ä‚¢‚é�s‚Ì�³”F‚ð�s‚¢‚Ü‚·�B", "�³”FŠm”F", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+            if (MessageBox.Show("•\Ž¦‚³‚ê‚Ä‚¢‚é�s‚Ì�³”F‚ð�s‚¢‚Ü‚·�B"
+                                , "�³”FŠm”F"
+                                , MessageBoxButtons.YesNo
+                                , MessageBoxIcon.Question) != DialogResult.Yes) return;
 
             // �³”Fƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
             ApprovalProcess();
@@ -1258,6 +1333,9 @@
         /// <param name="e"></param>
         private void btnOnApproval_Click(object sender, EventArgs e)
         {
+            // ‘I‘ðƒf�[ƒ^ƒ`ƒFƒbƒN
+            if (!CmbDataSelectCheck()) return;
+
             // �³”Fƒpƒlƒ‹�ipnlApproval�j�³”Fƒ{ƒ^ƒ“ 
             OnApprovalProcess();
         }
@@ -1271,6 +1349,9 @@
         /// <param name="e"></param>
         private void btnOnHold_Click(object sender, EventArgs e)
         {
+            // ‘I‘ðƒf�[ƒ^ƒ`ƒFƒbƒN
+            if (!CmbDataSelectCheck()) return;
+
             // �³”Fƒpƒlƒ‹�ipnlApproval�j•Û—¯ƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
             OnHoldProcess();
         }
@@ -1284,11 +1365,45 @@
         /// <param name="e"></param>
         private void btnNotApproval_Click(object sender, EventArgs e)
         {
+            // ‘I‘ðƒf�[ƒ^ƒ`ƒFƒbƒN
+            if (!CmbDataSelectCheck()) return;
+
             // �³”Fƒpƒlƒ‹�ipnlApproval�j•s�³”Fƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
             NotApprovalProcess();
         }
         #endregion
 
+        #region •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            SubControlEvent((int)EventDef.Person);
+            // ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+            SetcmbPersons();
+            SetControlEvent((int)EventDef.Person);
+
+            // ƒf�[ƒ^•\Ž¦
+            DispGridData();
+        }
+
+        #endregion
+
+        #region ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+        private void cmbPerson_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            SubControlEvent((int)EventDef.Department);
+            // ’S“–ŽÒ‘I‘ðŽž•”��‘I‘ð‚ð�Ý’è‚·‚é
+            SetPerosonToDepartment();
+            SetControlEvent((int)EventDef.Department);
+
+            // ƒf�[ƒ^•\Ž¦
+            DispGridData();
+        }
+        #endregion
+
         /// <summary>
         /// ŽèŠÔ�E’Ê�í‹ÆŽÒˆê——‰æ–Ê‚ð•\Ž¦‚·‚é�iƒeƒXƒg”Å�j
         /// </summary>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs	(revision 293)
@@ -28,64 +28,64 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle59 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle85 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle60 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle61 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle62 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle63 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle64 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle65 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle66 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle67 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle68 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle69 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle70 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle71 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle72 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle73 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle74 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle75 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle76 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle77 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle78 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle79 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle80 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle81 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle82 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle83 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle84 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle86 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle116 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle87 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle88 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle89 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle90 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle91 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle92 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle93 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle94 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle95 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle96 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle97 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle98 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle99 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle100 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle101 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle102 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle103 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle104 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle105 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle106 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle107 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle108 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle109 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle110 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle111 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle112 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle113 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle114 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle115 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle58 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle40 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle41 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle42 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle43 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle44 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle45 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle46 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle47 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle48 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle49 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle50 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle51 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle52 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle53 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle54 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle55 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle56 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle57 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataEntry = new System.Windows.Forms.Button();
@@ -99,12 +99,16 @@
             this.label8 = new System.Windows.Forms.Label();
             this.label7 = new System.Windows.Forms.Label();
             this.label6 = new System.Windows.Forms.Label();
-            this.btnShowView = new System.Windows.Forms.Button();
             this.CombinedOrderLabel1 = new System.Windows.Forms.Label();
             this.CombinedOrderLabel2 = new System.Windows.Forms.Label();
             this.button1 = new System.Windows.Forms.Button();
             this.btnOtherProc = new System.Windows.Forms.Button();
+            this.DataProgressBar = new System.Windows.Forms.ProgressBar();
             this.groupBoxEx1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.label11 = new System.Windows.Forms.Label();
+            this.cmbPerson = new System.Windows.Forms.ComboBox();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label4 = new System.Windows.Forms.Label();
             this.panel2 = new System.Windows.Forms.Panel();
             this.rdbProject = new System.Windows.Forms.RadioButton();
             this.rdbCompany = new System.Windows.Forms.RadioButton();
@@ -122,6 +126,8 @@
             this.cmbTargetMonth = new System.Windows.Forms.ComboBox();
             this.label3 = new System.Windows.Forms.Label();
             this.dgvCompany = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dgvProject = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.btnShowView = new System.Windows.Forms.Button();
             this.Column135 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column133 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column71 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -212,7 +218,8 @@
             this.Column64 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column139 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column140 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dgvProject = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column145 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column147 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column136 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column134 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -303,6 +310,8 @@
             this.Column77 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column141 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column142 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column146 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column148 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel1.SuspendLayout();
             this.groupBoxEx1.SuspendLayout();
             this.panel2.SuspendLayout();
@@ -485,20 +494,6 @@
             this.label6.TabIndex = 0;
             this.label6.Text = "ä¸€è¦§ã�®ã‚¿ã‚¤ãƒˆãƒ«";
             // 
-            // btnShowView
-            // 
-            this.btnShowView.BackColor = System.Drawing.Color.Blue;
-            this.btnShowView.ForeColor = System.Drawing.Color.White;
-            this.btnShowView.Location = new System.Drawing.Point(206, 6);
-            this.btnShowView.Margin = new System.Windows.Forms.Padding(4);
-            this.btnShowView.Name = "btnShowView";
-            this.btnShowView.Size = new System.Drawing.Size(120, 30);
-            this.btnShowView.TabIndex = 8;
-            this.btnShowView.Text = "è¡¨ã€€ç¤º";
-            this.btnShowView.UseVisualStyleBackColor = false;
-            this.btnShowView.Visible = false;
-            this.btnShowView.Click += new System.EventHandler(this.btnShowView_Click);
-            // 
             // CombinedOrderLabel1
             // 
             this.CombinedOrderLabel1.BackColor = System.Drawing.Color.DimGray;
@@ -550,6 +545,15 @@
             this.btnOtherProc.UseVisualStyleBackColor = false;
             this.btnOtherProc.Click += new System.EventHandler(this.btnOtherProc_Click);
             // 
+            // DataProgressBar
+            // 
+            this.DataProgressBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.DataProgressBar.Location = new System.Drawing.Point(10, 658);
+            this.DataProgressBar.Name = "DataProgressBar";
+            this.DataProgressBar.Size = new System.Drawing.Size(1065, 36);
+            this.DataProgressBar.TabIndex = 96;
+            this.DataProgressBar.Visible = false;
+            // 
             // groupBoxEx1
             // 
             this.groupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
@@ -557,6 +561,10 @@
             this.groupBoxEx1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
             this.groupBoxEx1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
             this.groupBoxEx1.BorderColor = System.Drawing.Color.Gray;
+            this.groupBoxEx1.Controls.Add(this.label11);
+            this.groupBoxEx1.Controls.Add(this.cmbPerson);
+            this.groupBoxEx1.Controls.Add(this.cmbDepartment);
+            this.groupBoxEx1.Controls.Add(this.label4);
             this.groupBoxEx1.Controls.Add(this.panel2);
             this.groupBoxEx1.Controls.Add(this.pnlApproval);
             this.groupBoxEx1.Controls.Add(this.pnlApprovalButton);
@@ -570,10 +578,58 @@
             this.groupBoxEx1.Margin = new System.Windows.Forms.Padding(4);
             this.groupBoxEx1.Name = "groupBoxEx1";
             this.groupBoxEx1.Padding = new System.Windows.Forms.Padding(4);
-            this.groupBoxEx1.Size = new System.Drawing.Size(1320, 40);
+            this.groupBoxEx1.Size = new System.Drawing.Size(1320, 70);
             this.groupBoxEx1.TabIndex = 2;
             this.groupBoxEx1.TabStop = false;
             // 
+            // label11
+            // 
+            this.label11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label11.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(692, 6);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(120, 25);
+            this.label11.TabIndex = 101;
+            this.label11.Text = "æ‹… å½“ è€…";
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbPerson
+            // 
+            this.cmbPerson.BackColor = System.Drawing.Color.White;
+            this.cmbPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbPerson.FormattingEnabled = true;
+            this.cmbPerson.Location = new System.Drawing.Point(820, 7);
+            this.cmbPerson.Name = "cmbPerson";
+            this.cmbPerson.Size = new System.Drawing.Size(200, 23);
+            this.cmbPerson.TabIndex = 100;
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(476, 7);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
+            this.cmbDepartment.TabIndex = 98;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(348, 6);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 99;
+            this.label4.Text = "éƒ¨ã€€ã€€ç½²";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // panel2
             // 
             this.panel2.BackColor = System.Drawing.Color.White;
@@ -580,9 +636,9 @@
             this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.panel2.Controls.Add(this.rdbProject);
             this.panel2.Controls.Add(this.rdbCompany);
-            this.panel2.Location = new System.Drawing.Point(681, 6);
+            this.panel2.Location = new System.Drawing.Point(132, 38);
             this.panel2.Name = "panel2";
-            this.panel2.Size = new System.Drawing.Size(227, 27);
+            this.panel2.Size = new System.Drawing.Size(200, 27);
             this.panel2.TabIndex = 97;
             // 
             // rdbProject
@@ -591,7 +647,7 @@
             this.rdbProject.BackColor = System.Drawing.Color.White;
             this.rdbProject.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.rdbProject.ForeColor = System.Drawing.Color.Black;
-            this.rdbProject.Location = new System.Drawing.Point(128, 1);
+            this.rdbProject.Location = new System.Drawing.Point(103, 2);
             this.rdbProject.Margin = new System.Windows.Forms.Padding(4);
             this.rdbProject.Name = "rdbProject";
             this.rdbProject.Size = new System.Drawing.Size(77, 20);
@@ -607,7 +663,7 @@
             this.rdbCompany.Checked = true;
             this.rdbCompany.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.rdbCompany.ForeColor = System.Drawing.Color.Black;
-            this.rdbCompany.Location = new System.Drawing.Point(18, 1);
+            this.rdbCompany.Location = new System.Drawing.Point(10, 2);
             this.rdbCompany.Margin = new System.Windows.Forms.Padding(4);
             this.rdbCompany.Name = "rdbCompany";
             this.rdbCompany.Size = new System.Drawing.Size(77, 20);
@@ -626,7 +682,7 @@
             this.pnlApproval.Controls.Add(this.lblApprovalCount);
             this.pnlApproval.Controls.Add(this.btnPetition);
             this.pnlApproval.Controls.Add(this.btnApproval);
-            this.pnlApproval.Location = new System.Drawing.Point(1043, 2);
+            this.pnlApproval.Location = new System.Drawing.Point(1054, 2);
             this.pnlApproval.Name = "pnlApproval";
             this.pnlApproval.Size = new System.Drawing.Size(262, 34);
             this.pnlApproval.TabIndex = 33;
@@ -681,7 +737,7 @@
             this.pnlApprovalButton.Controls.Add(this.btnOnApproval);
             this.pnlApprovalButton.Controls.Add(this.btnNotApproval);
             this.pnlApprovalButton.Controls.Add(this.btnOnHold);
-            this.pnlApprovalButton.Location = new System.Drawing.Point(1043, 2);
+            this.pnlApprovalButton.Location = new System.Drawing.Point(1054, 2);
             this.pnlApprovalButton.Name = "pnlApprovalButton";
             this.pnlApprovalButton.Size = new System.Drawing.Size(262, 34);
             this.pnlApprovalButton.TabIndex = 34;
@@ -732,7 +788,7 @@
             this.lblPaymentDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblPaymentDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblPaymentDate.ForeColor = System.Drawing.Color.Black;
-            this.lblPaymentDate.Location = new System.Drawing.Point(417, 7);
+            this.lblPaymentDate.Location = new System.Drawing.Point(476, 39);
             this.lblPaymentDate.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblPaymentDate.Name = "lblPaymentDate";
             this.lblPaymentDate.Size = new System.Drawing.Size(120, 25);
@@ -744,14 +800,14 @@
             // 
             this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
             this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label5.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.label5.ForeColor = System.Drawing.Color.Black;
-            this.label5.Location = new System.Drawing.Point(289, 7);
+            this.label5.Location = new System.Drawing.Point(348, 39);
             this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label5.Name = "label5";
             this.label5.Size = new System.Drawing.Size(120, 25);
             this.label5.TabIndex = 2;
-            this.label5.Text = "æ”¯æ‰•æ—¥";
+            this.label5.Text = "æ”¯ æ‰• æ—¥";
             this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // label2
@@ -760,7 +816,7 @@
             this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label2.ForeColor = System.Drawing.Color.Black;
-            this.label2.Location = new System.Drawing.Point(553, 7);
+            this.label2.Location = new System.Drawing.Point(5, 39);
             this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label2.Name = "label2";
             this.label2.Size = new System.Drawing.Size(120, 25);
@@ -775,7 +831,7 @@
             this.cmbTargetMonth.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbTargetMonth.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.cmbTargetMonth.FormattingEnabled = true;
-            this.cmbTargetMonth.Location = new System.Drawing.Point(133, 5);
+            this.cmbTargetMonth.Location = new System.Drawing.Point(133, 4);
             this.cmbTargetMonth.Margin = new System.Windows.Forms.Padding(4);
             this.cmbTargetMonth.Name = "cmbTargetMonth";
             this.cmbTargetMonth.Size = new System.Drawing.Size(140, 28);
@@ -788,7 +844,7 @@
             this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(5, 7);
+            this.label3.Location = new System.Drawing.Point(6, 6);
             this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label3.Name = "label3";
             this.label3.Size = new System.Drawing.Size(120, 25);
@@ -806,11 +862,11 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvCompany.BackgroundColor = System.Drawing.Color.White;
             this.dgvCompany.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle59.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle59.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            dataGridViewCellStyle59.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle59.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvCompany.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle59;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvCompany.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvCompany.ColumnHeadersHeight = 45;
             this.dgvCompany.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvCompany.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -903,18 +959,20 @@
             this.Column20,
             this.Column64,
             this.Column139,
-            this.Column140});
-            dataGridViewCellStyle85.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle85.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle85.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle85.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle85.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle85.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle85.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvCompany.DefaultCellStyle = dataGridViewCellStyle85;
+            this.Column140,
+            this.Column145,
+            this.Column147});
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle27.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle27.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle27.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle27.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle27.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle27.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvCompany.DefaultCellStyle = dataGridViewCellStyle27;
             this.dgvCompany.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
             this.dgvCompany.EnableHeadersVisualStyles = false;
-            this.dgvCompany.Location = new System.Drawing.Point(10, 84);
+            this.dgvCompany.Location = new System.Drawing.Point(10, 114);
             this.dgvCompany.Margin = new System.Windows.Forms.Padding(0);
             this.dgvCompany.MultiSelect = false;
             this.dgvCompany.Name = "dgvCompany";
@@ -923,7 +981,7 @@
             this.dgvCompany.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvCompany.RowTemplate.Height = 21;
             this.dgvCompany.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvCompany.Size = new System.Drawing.Size(1320, 570);
+            this.dgvCompany.Size = new System.Drawing.Size(1320, 530);
             this.dgvCompany.TabIndex = 4;
             this.dgvCompany.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
             this.dgvCompany.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellDoubleClick);
@@ -933,6 +991,160 @@
             this.dgvCompany.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValueChanged);
             this.dgvCompany.CurrentCellDirtyStateChanged += new System.EventHandler(this.DataGridView_CurrentCellDirtyStateChanged);
             // 
+            // dgvProject
+            // 
+            this.dgvProject.AllowUserToAddRows = false;
+            this.dgvProject.AllowUserToDeleteRows = false;
+            this.dgvProject.AllowUserToResizeRows = false;
+            this.dgvProject.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvProject.BackgroundColor = System.Drawing.Color.White;
+            this.dgvProject.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvProject.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
+            this.dgvProject.ColumnHeadersHeight = 45;
+            this.dgvProject.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvProject.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column136,
+            this.Column134,
+            this.dataGridViewTextBoxColumn1,
+            this.Column63,
+            this.Column35,
+            this.Project_Column1,
+            this.Column90,
+            this.Column51,
+            this.Project_Column2,
+            this.Project_Column3,
+            this.Project_Column4,
+            this.Project_Column5,
+            this.Project_Column6,
+            this.Column138,
+            this.Project_Column7,
+            this.Column144,
+            this.Project_Column8,
+            this.Project_Column9,
+            this.Project_Column10,
+            this.Project_Column11,
+            this.Project_Column12,
+            this.Project_Column13,
+            this.Project_Column14,
+            this.Project_Column15,
+            this.Project_Column16,
+            this.Project_Column17,
+            this.Project_Column18,
+            this.Project_Column19,
+            this.Column100,
+            this.KyouryokuKin_Pro,
+            this.Project_Column21,
+            this.Project_Column22,
+            this.Project_Column23,
+            this.Column50,
+            this.Project_Column24,
+            this.Column78,
+            this.Column52,
+            this.Project_Column25,
+            this.Column79,
+            this.Column113,
+            this.Column114,
+            this.Column53,
+            this.Project_Column26,
+            this.Column81,
+            this.Column115,
+            this.Column116,
+            this.Column54,
+            this.Project_Column27,
+            this.Column82,
+            this.Column117,
+            this.Column118,
+            this.Column55,
+            this.Project_Column28,
+            this.Column83,
+            this.Column119,
+            this.Column120,
+            this.Column56,
+            this.Project_Column29,
+            this.Column84,
+            this.Column121,
+            this.Column122,
+            this.Column57,
+            this.Project_Column30,
+            this.Column80,
+            this.Column123,
+            this.Column124,
+            this.Column58,
+            this.Project_Column31,
+            this.Column85,
+            this.Column125,
+            this.Column126,
+            this.Column59,
+            this.Project_Column32,
+            this.Column86,
+            this.Column127,
+            this.Column128,
+            this.Column60,
+            this.Project_Column33,
+            this.Column87,
+            this.Column129,
+            this.Column130,
+            this.Column61,
+            this.Project_Column34,
+            this.Column88,
+            this.Column131,
+            this.Column132,
+            this.Column21,
+            this.Column77,
+            this.Column141,
+            this.Column142,
+            this.Column146,
+            this.Column148});
+            dataGridViewCellStyle58.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle58.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle58.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle58.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle58.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle58.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle58.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvProject.DefaultCellStyle = dataGridViewCellStyle58;
+            this.dgvProject.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvProject.EnableHeadersVisualStyles = false;
+            this.dgvProject.Location = new System.Drawing.Point(10, 114);
+            this.dgvProject.Margin = new System.Windows.Forms.Padding(4);
+            this.dgvProject.MultiSelect = false;
+            this.dgvProject.Name = "dgvProject";
+            this.dgvProject.RowHeadersVisible = false;
+            this.dgvProject.RowHeadersWidth = 20;
+            this.dgvProject.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvProject.RowTemplate.Height = 21;
+            this.dgvProject.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvProject.Size = new System.Drawing.Size(1320, 530);
+            this.dgvProject.TabIndex = 3;
+            this.dgvProject.Visible = false;
+            this.dgvProject.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
+            this.dgvProject.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellDoubleClick);
+            this.dgvProject.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellEnter);
+            this.dgvProject.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.DataGridView_CellFormatting);
+            this.dgvProject.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValidated);
+            this.dgvProject.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValueChanged);
+            this.dgvProject.CurrentCellDirtyStateChanged += new System.EventHandler(this.DataGridView_CurrentCellDirtyStateChanged);
+            // 
+            // btnShowView
+            // 
+            this.btnShowView.BackColor = System.Drawing.Color.Blue;
+            this.btnShowView.ForeColor = System.Drawing.Color.White;
+            this.btnShowView.Location = new System.Drawing.Point(206, 6);
+            this.btnShowView.Margin = new System.Windows.Forms.Padding(4);
+            this.btnShowView.Name = "btnShowView";
+            this.btnShowView.Size = new System.Drawing.Size(120, 30);
+            this.btnShowView.TabIndex = 8;
+            this.btnShowView.Text = "è¡¨ã€€ç¤º";
+            this.btnShowView.UseVisualStyleBackColor = false;
+            this.btnShowView.Visible = false;
+            this.btnShowView.Click += new System.EventHandler(this.btnShowView_Click);
+            // 
             // Column135
             // 
             this.Column135.HeaderText = "CompanyDispOrder";
@@ -998,8 +1210,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle60.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle60;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
             this.Column1.FillWeight = 110F;
             this.Column1.HeaderText = "â„–";
             this.Column1.Name = "Column1";
@@ -1062,8 +1274,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle61.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle61;
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle3;
             this.Column4.HeaderText = "è«‹æ±‚æ›¸\r\né‡‘é¡�";
             this.Column4.Name = "Column4";
             this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1072,8 +1284,8 @@
             // 
             // Column9
             // 
-            dataGridViewCellStyle62.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle62;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle4;
             this.Column9.HeaderText = "é«˜é€Ÿä»£é§�è»Šä»£";
             this.Column9.Name = "Column9";
             this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1082,8 +1294,8 @@
             // 
             // Column10
             // 
-            dataGridViewCellStyle63.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column10.DefaultCellStyle = dataGridViewCellStyle63;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column10.HeaderText = "é‡‘ç‰©ä»£";
             this.Column10.Name = "Column10";
             this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1092,8 +1304,8 @@
             // 
             // Column11
             // 
-            dataGridViewCellStyle64.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column11.DefaultCellStyle = dataGridViewCellStyle64;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column11.HeaderText = "ç”£å»ƒç¨Ž";
             this.Column11.Name = "Column11";
             this.Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1102,8 +1314,8 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle65.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle65;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column5.HeaderText = "è«‹æ±‚\r\né‡‘é¡�";
             this.Column5.Name = "Column5";
             this.Column5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1112,8 +1324,8 @@
             // 
             // Column6
             // 
-            dataGridViewCellStyle66.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle66;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column6.HeaderText = "å€¤å¼•\r\né‡‘é¡�";
             this.Column6.Name = "Column6";
             this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1122,8 +1334,8 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle67.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle67;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column7.HeaderText = "ç›¸æ®º\r\né‡‘é¡�";
             this.Column7.Name = "Column7";
             this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1132,8 +1344,8 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle68.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle68;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle10;
             this.Column8.HeaderText = "æ¬¡å›ž\r\nç¹°è¶Š";
             this.Column8.Name = "Column8";
             this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1142,8 +1354,8 @@
             // 
             // Column40
             // 
-            dataGridViewCellStyle69.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column40.DefaultCellStyle = dataGridViewCellStyle69;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column40.DefaultCellStyle = dataGridViewCellStyle11;
             this.Column40.HeaderText = "é«˜é€Ÿä»£é§�è»Šä»£";
             this.Column40.Name = "Column40";
             this.Column40.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1152,8 +1364,8 @@
             // 
             // Column41
             // 
-            dataGridViewCellStyle70.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column41.DefaultCellStyle = dataGridViewCellStyle70;
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column41.DefaultCellStyle = dataGridViewCellStyle12;
             this.Column41.HeaderText = "é‡‘ç‰©ä»£";
             this.Column41.Name = "Column41";
             this.Column41.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1162,8 +1374,8 @@
             // 
             // Column43
             // 
-            dataGridViewCellStyle71.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column43.DefaultCellStyle = dataGridViewCellStyle71;
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column43.DefaultCellStyle = dataGridViewCellStyle13;
             this.Column43.HeaderText = "ç”£å»ƒç¨Ž";
             this.Column43.Name = "Column43";
             this.Column43.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1172,8 +1384,8 @@
             // 
             // Column12
             // 
-            dataGridViewCellStyle72.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column12.DefaultCellStyle = dataGridViewCellStyle72;
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle14;
             this.Column12.HeaderText = "å�”åŠ›é‡‘";
             this.Column12.Name = "Column12";
             this.Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1189,10 +1401,10 @@
             // 
             // KyouryokuKin_Com
             // 
-            dataGridViewCellStyle73.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle73.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle73.ForeColor = System.Drawing.Color.Black;
-            this.KyouryokuKin_Com.DefaultCellStyle = dataGridViewCellStyle73;
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle15.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.Black;
+            this.KyouryokuKin_Com.DefaultCellStyle = dataGridViewCellStyle15;
             this.KyouryokuKin_Com.HeaderText = "å�”åŠ›é‡‘\r\næœ‰ç„¡";
             this.KyouryokuKin_Com.MaxDropDownItems = 3;
             this.KyouryokuKin_Com.Name = "KyouryokuKin_Com";
@@ -1200,8 +1412,8 @@
             // 
             // Column14
             // 
-            dataGridViewCellStyle74.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column14.DefaultCellStyle = dataGridViewCellStyle74;
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle16;
             this.Column14.HeaderText = "æ³¨æ–‡æ›¸\r\né€�ä»˜";
             this.Column14.Name = "Column14";
             this.Column14.ReadOnly = true;
@@ -1210,8 +1422,8 @@
             // 
             // Column15
             // 
-            dataGridViewCellStyle75.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column15.DefaultCellStyle = dataGridViewCellStyle75;
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle17;
             this.Column15.HeaderText = "æ³¨æ–‡æ›¸\r\nåˆ°ç�€";
             this.Column15.Name = "Column15";
             this.Column15.ReadOnly = true;
@@ -1220,8 +1432,8 @@
             // 
             // Column16
             // 
-            dataGridViewCellStyle76.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column16.DefaultCellStyle = dataGridViewCellStyle76;
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column16.DefaultCellStyle = dataGridViewCellStyle18;
             this.Column16.HeaderText = "äºˆç®—æ›¸";
             this.Column16.Name = "Column16";
             this.Column16.ReadOnly = true;
@@ -1237,9 +1449,9 @@
             // 
             // Column17
             // 
-            dataGridViewCellStyle77.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column17.DefaultCellStyle = dataGridViewCellStyle77;
-            this.Column17.HeaderText = "æ‹…å½“è€…\r\nç¢ºèª�";
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column17.DefaultCellStyle = dataGridViewCellStyle19;
+            this.Column17.HeaderText = "ç”³è«‹\r\næ‹…å½“è€…";
             this.Column17.Name = "Column17";
             this.Column17.ReadOnly = true;
             this.Column17.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1261,8 +1473,8 @@
             // 
             // Column18
             // 
-            dataGridViewCellStyle78.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column18.DefaultCellStyle = dataGridViewCellStyle78;
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column18.DefaultCellStyle = dataGridViewCellStyle20;
             this.Column18.HeaderText = "æ‰¿èª�è€…ï¼‘\r\næ‰¿èª�";
             this.Column18.Name = "Column18";
             this.Column18.ReadOnly = true;
@@ -1292,7 +1504,7 @@
             // 
             // Column38
             // 
-            this.Column38.HeaderText = "æ‰¿èª�è€…2ã‚³ãƒ¼ãƒ‰";
+            this.Column38.HeaderText = "æ‰¿èª�è€…ï¼’ã‚³ãƒ¼ãƒ‰";
             this.Column38.Name = "Column38";
             this.Column38.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column38.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1299,8 +1511,8 @@
             // 
             // Column19
             // 
-            dataGridViewCellStyle79.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column19.DefaultCellStyle = dataGridViewCellStyle79;
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column19.DefaultCellStyle = dataGridViewCellStyle21;
             this.Column19.HeaderText = "æ‰¿èª�è€…ï¼’\r\næ‰¿èª�";
             this.Column19.Name = "Column19";
             this.Column19.ReadOnly = true;
@@ -1330,7 +1542,7 @@
             // 
             // Column39
             // 
-            this.Column39.HeaderText = "æ‰¿èª�è€…3ã‚³ãƒ¼ãƒ‰";
+            this.Column39.HeaderText = "æ‰¿èª�è€…ï¼“ã‚³ãƒ¼ãƒ‰";
             this.Column39.Name = "Column39";
             this.Column39.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column39.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1337,8 +1549,8 @@
             // 
             // Column22
             // 
-            dataGridViewCellStyle80.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column22.DefaultCellStyle = dataGridViewCellStyle80;
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column22.DefaultCellStyle = dataGridViewCellStyle22;
             this.Column22.HeaderText = "æ‰¿èª�è€…ï¼“\r\næ‰¿èª�";
             this.Column22.Name = "Column22";
             this.Column22.ReadOnly = true;
@@ -1368,7 +1580,7 @@
             // 
             // Column42
             // 
-            this.Column42.HeaderText = "æ‰¿èª�è€…4ã‚³ãƒ¼ãƒ‰";
+            this.Column42.HeaderText = "æ‰¿èª�è€…ï¼”ã‚³ãƒ¼ãƒ‰";
             this.Column42.Name = "Column42";
             this.Column42.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column42.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1375,9 +1587,9 @@
             // 
             // Column25
             // 
-            dataGridViewCellStyle81.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column25.DefaultCellStyle = dataGridViewCellStyle81;
-            this.Column25.HeaderText = "æ‰¿èª�è€…ï¼”æ‰¿èª�";
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column25.DefaultCellStyle = dataGridViewCellStyle23;
+            this.Column25.HeaderText = "æ‰¿èª�è€…ï¼”\r\næ‰¿èª�";
             this.Column25.Name = "Column25";
             this.Column25.ReadOnly = true;
             this.Column25.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1406,7 +1618,7 @@
             // 
             // Column44
             // 
-            this.Column44.HeaderText = "æ‰¿èª�è€…5ã‚³ãƒ¼ãƒ‰";
+            this.Column44.HeaderText = "æ‰¿èª�è€…ï¼•ã‚³ãƒ¼ãƒ‰";
             this.Column44.Name = "Column44";
             this.Column44.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column44.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Programmatic;
@@ -1413,9 +1625,9 @@
             // 
             // Column27
             // 
-            dataGridViewCellStyle82.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column27.DefaultCellStyle = dataGridViewCellStyle82;
-            this.Column27.HeaderText = "æ‰¿èª�è€…ï¼•æ‰¿èª�";
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column27.DefaultCellStyle = dataGridViewCellStyle24;
+            this.Column27.HeaderText = "æ‰¿èª�è€…ï¼•\r\næ‰¿èª�";
             this.Column27.Name = "Column27";
             this.Column27.ReadOnly = true;
             this.Column27.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1444,7 +1656,7 @@
             // 
             // Column45
             // 
-            this.Column45.HeaderText = "æ‰¿èª�è€…6ã‚³ãƒ¼ãƒ‰";
+            this.Column45.HeaderText = "æ‰¿èª�è€…ï¼–ã‚³ãƒ¼ãƒ‰";
             this.Column45.Name = "Column45";
             this.Column45.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column45.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1451,9 +1663,9 @@
             // 
             // Column28
             // 
-            dataGridViewCellStyle83.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column28.DefaultCellStyle = dataGridViewCellStyle83;
-            this.Column28.HeaderText = "æ‰¿èª�è€…ï¼–æ‰¿èª�";
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column28.DefaultCellStyle = dataGridViewCellStyle25;
+            this.Column28.HeaderText = "æ‰¿èª�è€…ï¼–\r\næ‰¿èª�";
             this.Column28.Name = "Column28";
             this.Column28.ReadOnly = true;
             this.Column28.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1482,7 +1694,7 @@
             // 
             // Column46
             // 
-            this.Column46.HeaderText = "æ‰¿èª�è€…7ã‚³ãƒ¼ãƒ‰";
+            this.Column46.HeaderText = "æ‰¿èª�è€…ï¼—ã‚³ãƒ¼ãƒ‰";
             this.Column46.Name = "Column46";
             this.Column46.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column46.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1489,7 +1701,7 @@
             // 
             // Column29
             // 
-            this.Column29.HeaderText = "æ‰¿èª�è€…ï¼—æ‰¿èª�";
+            this.Column29.HeaderText = "æ‰¿èª�è€…ï¼—\r\næ‰¿èª�";
             this.Column29.Name = "Column29";
             this.Column29.ReadOnly = true;
             this.Column29.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1518,7 +1730,7 @@
             // 
             // Column47
             // 
-            this.Column47.HeaderText = "æ‰¿èª�è€…8ã‚³ãƒ¼ãƒ‰";
+            this.Column47.HeaderText = "æ‰¿èª�è€…ï¼˜ã‚³ãƒ¼ãƒ‰";
             this.Column47.Name = "Column47";
             this.Column47.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column47.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1525,7 +1737,7 @@
             // 
             // Column30
             // 
-            this.Column30.HeaderText = "æ‰¿èª�è€…ï¼˜æ‰¿èª�";
+            this.Column30.HeaderText = "æ‰¿èª�è€…ï¼˜\r\næ‰¿èª�";
             this.Column30.Name = "Column30";
             this.Column30.ReadOnly = true;
             this.Column30.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1553,7 +1765,7 @@
             // 
             // Column48
             // 
-            this.Column48.HeaderText = "æ‰¿èª�è€…9ã‚³ãƒ¼ãƒ‰";
+            this.Column48.HeaderText = "æ‰¿èª�è€…ï¼™ã‚³ãƒ¼ãƒ‰";
             this.Column48.Name = "Column48";
             this.Column48.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column48.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -1560,7 +1772,7 @@
             // 
             // Column31
             // 
-            this.Column31.HeaderText = "æ‰¿èª�è€…ï¼™æ‰¿èª�";
+            this.Column31.HeaderText = "æ‰¿èª�è€…ï¼™\r\næ‰¿èª�";
             this.Column31.Name = "Column31";
             this.Column31.ReadOnly = true;
             this.Column31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1596,7 +1808,7 @@
             // 
             // Column32
             // 
-            this.Column32.HeaderText = "æ‰¿èª�è€…10æ‰¿èª�";
+            this.Column32.HeaderText = "æ‰¿èª�è€…10\r\næ‰¿èª�";
             this.Column32.Name = "Column32";
             this.Column32.ReadOnly = true;
             this.Column32.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1625,8 +1837,8 @@
             // 
             // Column20
             // 
-            dataGridViewCellStyle84.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column20.DefaultCellStyle = dataGridViewCellStyle84;
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column20.DefaultCellStyle = dataGridViewCellStyle26;
             this.Column20.HeaderText = "å‚™è€ƒ";
             this.Column20.Name = "Column20";
             this.Column20.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1657,144 +1869,19 @@
             this.Column140.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column140.Visible = false;
             // 
-            // dgvProject
+            // Column145
             // 
-            this.dgvProject.AllowUserToAddRows = false;
-            this.dgvProject.AllowUserToDeleteRows = false;
-            this.dgvProject.AllowUserToResizeRows = false;
-            this.dgvProject.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.dgvProject.BackgroundColor = System.Drawing.Color.White;
-            this.dgvProject.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle86.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle86.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            dataGridViewCellStyle86.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle86.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvProject.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle86;
-            this.dgvProject.ColumnHeadersHeight = 45;
-            this.dgvProject.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvProject.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column136,
-            this.Column134,
-            this.dataGridViewTextBoxColumn1,
-            this.Column63,
-            this.Column35,
-            this.Project_Column1,
-            this.Column90,
-            this.Column51,
-            this.Project_Column2,
-            this.Project_Column3,
-            this.Project_Column4,
-            this.Project_Column5,
-            this.Project_Column6,
-            this.Column138,
-            this.Project_Column7,
-            this.Column144,
-            this.Project_Column8,
-            this.Project_Column9,
-            this.Project_Column10,
-            this.Project_Column11,
-            this.Project_Column12,
-            this.Project_Column13,
-            this.Project_Column14,
-            this.Project_Column15,
-            this.Project_Column16,
-            this.Project_Column17,
-            this.Project_Column18,
-            this.Project_Column19,
-            this.Column100,
-            this.KyouryokuKin_Pro,
-            this.Project_Column21,
-            this.Project_Column22,
-            this.Project_Column23,
-            this.Column50,
-            this.Project_Column24,
-            this.Column78,
-            this.Column52,
-            this.Project_Column25,
-            this.Column79,
-            this.Column113,
-            this.Column114,
-            this.Column53,
-            this.Project_Column26,
-            this.Column81,
-            this.Column115,
-            this.Column116,
-            this.Column54,
-            this.Project_Column27,
-            this.Column82,
-            this.Column117,
-            this.Column118,
-            this.Column55,
-            this.Project_Column28,
-            this.Column83,
-            this.Column119,
-            this.Column120,
-            this.Column56,
-            this.Project_Column29,
-            this.Column84,
-            this.Column121,
-            this.Column122,
-            this.Column57,
-            this.Project_Column30,
-            this.Column80,
-            this.Column123,
-            this.Column124,
-            this.Column58,
-            this.Project_Column31,
-            this.Column85,
-            this.Column125,
-            this.Column126,
-            this.Column59,
-            this.Project_Column32,
-            this.Column86,
-            this.Column127,
-            this.Column128,
-            this.Column60,
-            this.Project_Column33,
-            this.Column87,
-            this.Column129,
-            this.Column130,
-            this.Column61,
-            this.Project_Column34,
-            this.Column88,
-            this.Column131,
-            this.Column132,
-            this.Column21,
-            this.Column77,
-            this.Column141,
-            this.Column142});
-            dataGridViewCellStyle116.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle116.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle116.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle116.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle116.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle116.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle116.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvProject.DefaultCellStyle = dataGridViewCellStyle116;
-            this.dgvProject.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
-            this.dgvProject.EnableHeadersVisualStyles = false;
-            this.dgvProject.Location = new System.Drawing.Point(10, 84);
-            this.dgvProject.Margin = new System.Windows.Forms.Padding(4);
-            this.dgvProject.MultiSelect = false;
-            this.dgvProject.Name = "dgvProject";
-            this.dgvProject.RowHeadersVisible = false;
-            this.dgvProject.RowHeadersWidth = 20;
-            this.dgvProject.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvProject.RowTemplate.Height = 21;
-            this.dgvProject.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvProject.Size = new System.Drawing.Size(1320, 570);
-            this.dgvProject.TabIndex = 3;
-            this.dgvProject.Visible = false;
-            this.dgvProject.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
-            this.dgvProject.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellDoubleClick);
-            this.dgvProject.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellEnter);
-            this.dgvProject.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.DataGridView_CellFormatting);
-            this.dgvProject.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValidated);
-            this.dgvProject.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValueChanged);
-            this.dgvProject.CurrentCellDirtyStateChanged += new System.EventHandler(this.DataGridView_CurrentCellDirtyStateChanged);
+            this.Column145.HeaderText = "éƒ¨ç½²ã‚³ãƒ¼ãƒ‰";
+            this.Column145.Name = "Column145";
+            this.Column145.ReadOnly = true;
+            this.Column145.Visible = false;
             // 
+            // Column147
+            // 
+            this.Column147.HeaderText = "å·¥äº‹æ‹…å½“è€…";
+            this.Column147.Name = "Column147";
+            this.Column147.Visible = false;
+            // 
             // Column136
             // 
             this.Column136.HeaderText = "CompanyDispOrder";
@@ -1860,8 +1947,8 @@
             // 
             // Project_Column3
             // 
-            dataGridViewCellStyle87.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column3.DefaultCellStyle = dataGridViewCellStyle87;
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column3.DefaultCellStyle = dataGridViewCellStyle29;
             this.Project_Column3.HeaderText = "â„–";
             this.Project_Column3.Name = "Project_Column3";
             this.Project_Column3.ReadOnly = true;
@@ -1879,8 +1966,8 @@
             // 
             // Project_Column5
             // 
-            dataGridViewCellStyle88.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Project_Column5.DefaultCellStyle = dataGridViewCellStyle88;
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Project_Column5.DefaultCellStyle = dataGridViewCellStyle30;
             this.Project_Column5.HeaderText = "ç�¾å ´å��";
             this.Project_Column5.Name = "Project_Column5";
             this.Project_Column5.ReadOnly = true;
@@ -1922,8 +2009,8 @@
             // 
             // Project_Column8
             // 
-            dataGridViewCellStyle89.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column8.DefaultCellStyle = dataGridViewCellStyle89;
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column8.DefaultCellStyle = dataGridViewCellStyle31;
             this.Project_Column8.HeaderText = "è«‹æ±‚æ›¸\r\n é‡‘é¡�";
             this.Project_Column8.Name = "Project_Column8";
             this.Project_Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1932,8 +2019,8 @@
             // 
             // Project_Column9
             // 
-            dataGridViewCellStyle90.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column9.DefaultCellStyle = dataGridViewCellStyle90;
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column9.DefaultCellStyle = dataGridViewCellStyle32;
             this.Project_Column9.HeaderText = "é«˜é€Ÿä»£\r\né§�è»Šä»£";
             this.Project_Column9.Name = "Project_Column9";
             this.Project_Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1942,8 +2029,8 @@
             // 
             // Project_Column10
             // 
-            dataGridViewCellStyle91.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column10.DefaultCellStyle = dataGridViewCellStyle91;
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column10.DefaultCellStyle = dataGridViewCellStyle33;
             this.Project_Column10.HeaderText = "é‡‘ç‰©ä»£";
             this.Project_Column10.Name = "Project_Column10";
             this.Project_Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1952,8 +2039,8 @@
             // 
             // Project_Column11
             // 
-            dataGridViewCellStyle92.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column11.DefaultCellStyle = dataGridViewCellStyle92;
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column11.DefaultCellStyle = dataGridViewCellStyle34;
             this.Project_Column11.HeaderText = "ç”£å»ƒç¨Ž";
             this.Project_Column11.Name = "Project_Column11";
             this.Project_Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1962,8 +2049,8 @@
             // 
             // Project_Column12
             // 
-            dataGridViewCellStyle93.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column12.DefaultCellStyle = dataGridViewCellStyle93;
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column12.DefaultCellStyle = dataGridViewCellStyle35;
             this.Project_Column12.HeaderText = "è«‹æ±‚\r\né‡‘é¡�";
             this.Project_Column12.Name = "Project_Column12";
             this.Project_Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1972,8 +2059,8 @@
             // 
             // Project_Column13
             // 
-            dataGridViewCellStyle94.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column13.DefaultCellStyle = dataGridViewCellStyle94;
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column13.DefaultCellStyle = dataGridViewCellStyle36;
             this.Project_Column13.HeaderText = "å€¤å¼•\r\né‡‘é¡�";
             this.Project_Column13.Name = "Project_Column13";
             this.Project_Column13.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1982,8 +2069,8 @@
             // 
             // Project_Column14
             // 
-            dataGridViewCellStyle95.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column14.DefaultCellStyle = dataGridViewCellStyle95;
+            dataGridViewCellStyle37.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column14.DefaultCellStyle = dataGridViewCellStyle37;
             this.Project_Column14.HeaderText = "ç›¸æ®º\r\né‡‘é¡�";
             this.Project_Column14.Name = "Project_Column14";
             this.Project_Column14.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1992,9 +2079,9 @@
             // 
             // Project_Column15
             // 
-            dataGridViewCellStyle96.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle96.Format = "#,##0";
-            this.Project_Column15.DefaultCellStyle = dataGridViewCellStyle96;
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle38.Format = "#,##0";
+            this.Project_Column15.DefaultCellStyle = dataGridViewCellStyle38;
             this.Project_Column15.HeaderText = "æ¬¡å›ž\r\nç¹°è¶Š";
             this.Project_Column15.Name = "Project_Column15";
             this.Project_Column15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2003,8 +2090,8 @@
             // 
             // Project_Column16
             // 
-            dataGridViewCellStyle97.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column16.DefaultCellStyle = dataGridViewCellStyle97;
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column16.DefaultCellStyle = dataGridViewCellStyle39;
             this.Project_Column16.HeaderText = "é«˜é€Ÿä»£\r\né§�è»Šä»£";
             this.Project_Column16.Name = "Project_Column16";
             this.Project_Column16.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2013,8 +2100,8 @@
             // 
             // Project_Column17
             // 
-            dataGridViewCellStyle98.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column17.DefaultCellStyle = dataGridViewCellStyle98;
+            dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column17.DefaultCellStyle = dataGridViewCellStyle40;
             this.Project_Column17.HeaderText = "é‡‘ç‰©ä»£";
             this.Project_Column17.Name = "Project_Column17";
             this.Project_Column17.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2023,8 +2110,8 @@
             // 
             // Project_Column18
             // 
-            dataGridViewCellStyle99.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column18.DefaultCellStyle = dataGridViewCellStyle99;
+            dataGridViewCellStyle41.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column18.DefaultCellStyle = dataGridViewCellStyle41;
             this.Project_Column18.HeaderText = "ç”£å»ƒç¨Ž";
             this.Project_Column18.Name = "Project_Column18";
             this.Project_Column18.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2033,8 +2120,8 @@
             // 
             // Project_Column19
             // 
-            dataGridViewCellStyle100.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Project_Column19.DefaultCellStyle = dataGridViewCellStyle100;
+            dataGridViewCellStyle42.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column19.DefaultCellStyle = dataGridViewCellStyle42;
             this.Project_Column19.HeaderText = "å�”åŠ›é‡‘";
             this.Project_Column19.Name = "Project_Column19";
             this.Project_Column19.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2050,10 +2137,10 @@
             // 
             // KyouryokuKin_Pro
             // 
-            dataGridViewCellStyle101.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle101.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle101.ForeColor = System.Drawing.Color.Black;
-            this.KyouryokuKin_Pro.DefaultCellStyle = dataGridViewCellStyle101;
+            dataGridViewCellStyle43.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle43.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle43.ForeColor = System.Drawing.Color.Black;
+            this.KyouryokuKin_Pro.DefaultCellStyle = dataGridViewCellStyle43;
             this.KyouryokuKin_Pro.HeaderText = "å�”åŠ›é‡‘\r\næœ‰ç„¡";
             this.KyouryokuKin_Pro.Name = "KyouryokuKin_Pro";
             this.KyouryokuKin_Pro.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2060,8 +2147,8 @@
             // 
             // Project_Column21
             // 
-            dataGridViewCellStyle102.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column21.DefaultCellStyle = dataGridViewCellStyle102;
+            dataGridViewCellStyle44.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column21.DefaultCellStyle = dataGridViewCellStyle44;
             this.Project_Column21.HeaderText = "æ³¨æ–‡æ›¸\r\né€�ä»˜";
             this.Project_Column21.Name = "Project_Column21";
             this.Project_Column21.ReadOnly = true;
@@ -2070,8 +2157,8 @@
             // 
             // Project_Column22
             // 
-            dataGridViewCellStyle103.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column22.DefaultCellStyle = dataGridViewCellStyle103;
+            dataGridViewCellStyle45.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column22.DefaultCellStyle = dataGridViewCellStyle45;
             this.Project_Column22.HeaderText = "æ³¨æ–‡æ›¸\r\nåˆ°ç�€";
             this.Project_Column22.Name = "Project_Column22";
             this.Project_Column22.ReadOnly = true;
@@ -2080,8 +2167,8 @@
             // 
             // Project_Column23
             // 
-            dataGridViewCellStyle104.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column23.DefaultCellStyle = dataGridViewCellStyle104;
+            dataGridViewCellStyle46.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column23.DefaultCellStyle = dataGridViewCellStyle46;
             this.Project_Column23.HeaderText = "äºˆç®—æ›¸";
             this.Project_Column23.Name = "Project_Column23";
             this.Project_Column23.ReadOnly = true;
@@ -2097,9 +2184,9 @@
             // 
             // Project_Column24
             // 
-            dataGridViewCellStyle105.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column24.DefaultCellStyle = dataGridViewCellStyle105;
-            this.Project_Column24.HeaderText = "æ‹…å½“è€…\r\nç¢ºèª�";
+            dataGridViewCellStyle47.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column24.DefaultCellStyle = dataGridViewCellStyle47;
+            this.Project_Column24.HeaderText = "ç”³è«‹\r\næ‹…å½“è€…";
             this.Project_Column24.Name = "Project_Column24";
             this.Project_Column24.ReadOnly = true;
             this.Project_Column24.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2121,8 +2208,8 @@
             // 
             // Project_Column25
             // 
-            dataGridViewCellStyle106.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column25.DefaultCellStyle = dataGridViewCellStyle106;
+            dataGridViewCellStyle48.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column25.DefaultCellStyle = dataGridViewCellStyle48;
             this.Project_Column25.HeaderText = "æ‰¿èª�è€…ï¼‘\r\næ‰¿èª�";
             this.Project_Column25.Name = "Project_Column25";
             this.Project_Column25.ReadOnly = true;
@@ -2159,8 +2246,8 @@
             // 
             // Project_Column26
             // 
-            dataGridViewCellStyle107.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column26.DefaultCellStyle = dataGridViewCellStyle107;
+            dataGridViewCellStyle49.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column26.DefaultCellStyle = dataGridViewCellStyle49;
             this.Project_Column26.HeaderText = "æ‰¿èª�è€…ï¼’\r\næ‰¿èª�";
             this.Project_Column26.Name = "Project_Column26";
             this.Project_Column26.ReadOnly = true;
@@ -2197,8 +2284,8 @@
             // 
             // Project_Column27
             // 
-            dataGridViewCellStyle108.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column27.DefaultCellStyle = dataGridViewCellStyle108;
+            dataGridViewCellStyle50.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column27.DefaultCellStyle = dataGridViewCellStyle50;
             this.Project_Column27.HeaderText = "æ‰¿èª�è€…ï¼“\r\næ‰¿èª�";
             this.Project_Column27.Name = "Project_Column27";
             this.Project_Column27.ReadOnly = true;
@@ -2235,9 +2322,9 @@
             // 
             // Project_Column28
             // 
-            dataGridViewCellStyle109.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column28.DefaultCellStyle = dataGridViewCellStyle109;
-            this.Project_Column28.HeaderText = "æ‰¿èª�è€…ï¼”æ‰¿èª�";
+            dataGridViewCellStyle51.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column28.DefaultCellStyle = dataGridViewCellStyle51;
+            this.Project_Column28.HeaderText = "æ‰¿èª�è€…ï¼”\r\næ‰¿èª�";
             this.Project_Column28.Name = "Project_Column28";
             this.Project_Column28.ReadOnly = true;
             this.Project_Column28.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2273,9 +2360,9 @@
             // 
             // Project_Column29
             // 
-            dataGridViewCellStyle110.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column29.DefaultCellStyle = dataGridViewCellStyle110;
-            this.Project_Column29.HeaderText = "æ‰¿èª�è€…ï¼•æ‰¿èª�";
+            dataGridViewCellStyle52.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column29.DefaultCellStyle = dataGridViewCellStyle52;
+            this.Project_Column29.HeaderText = "æ‰¿èª�è€…ï¼•\r\næ‰¿èª�";
             this.Project_Column29.Name = "Project_Column29";
             this.Project_Column29.ReadOnly = true;
             this.Project_Column29.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2311,9 +2398,9 @@
             // 
             // Project_Column30
             // 
-            dataGridViewCellStyle111.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column30.DefaultCellStyle = dataGridViewCellStyle111;
-            this.Project_Column30.HeaderText = "æ‰¿èª�è€…ï¼–æ‰¿èª�";
+            dataGridViewCellStyle53.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column30.DefaultCellStyle = dataGridViewCellStyle53;
+            this.Project_Column30.HeaderText = "æ‰¿èª�è€…ï¼–\r\næ‰¿èª�";
             this.Project_Column30.Name = "Project_Column30";
             this.Project_Column30.ReadOnly = true;
             this.Project_Column30.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2349,9 +2436,9 @@
             // 
             // Project_Column31
             // 
-            dataGridViewCellStyle112.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column31.DefaultCellStyle = dataGridViewCellStyle112;
-            this.Project_Column31.HeaderText = "æ‰¿èª�è€…ï¼—æ‰¿èª�";
+            dataGridViewCellStyle54.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column31.DefaultCellStyle = dataGridViewCellStyle54;
+            this.Project_Column31.HeaderText = "æ‰¿èª�è€…ï¼—\r\næ‰¿èª�";
             this.Project_Column31.Name = "Project_Column31";
             this.Project_Column31.ReadOnly = true;
             this.Project_Column31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2387,9 +2474,9 @@
             // 
             // Project_Column32
             // 
-            dataGridViewCellStyle113.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column32.DefaultCellStyle = dataGridViewCellStyle113;
-            this.Project_Column32.HeaderText = "æ‰¿èª�è€…ï¼˜æ‰¿èª�";
+            dataGridViewCellStyle55.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column32.DefaultCellStyle = dataGridViewCellStyle55;
+            this.Project_Column32.HeaderText = "æ‰¿èª�è€…ï¼˜\r\næ‰¿èª�";
             this.Project_Column32.Name = "Project_Column32";
             this.Project_Column32.ReadOnly = true;
             this.Project_Column32.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2425,9 +2512,9 @@
             // 
             // Project_Column33
             // 
-            dataGridViewCellStyle114.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column33.DefaultCellStyle = dataGridViewCellStyle114;
-            this.Project_Column33.HeaderText = "æ‰¿èª�è€…ï¼™æ‰¿èª�";
+            dataGridViewCellStyle56.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column33.DefaultCellStyle = dataGridViewCellStyle56;
+            this.Project_Column33.HeaderText = "æ‰¿èª�è€…ï¼™\r\næ‰¿èª�";
             this.Project_Column33.Name = "Project_Column33";
             this.Project_Column33.ReadOnly = true;
             this.Project_Column33.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2463,9 +2550,9 @@
             // 
             // Project_Column34
             // 
-            dataGridViewCellStyle115.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Project_Column34.DefaultCellStyle = dataGridViewCellStyle115;
-            this.Project_Column34.HeaderText = "æ‰¿èª�è€…10æ‰¿èª�";
+            dataGridViewCellStyle57.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column34.DefaultCellStyle = dataGridViewCellStyle57;
+            this.Project_Column34.HeaderText = "æ‰¿èª�è€…10\r\næ‰¿èª�";
             this.Project_Column34.Name = "Project_Column34";
             this.Project_Column34.ReadOnly = true;
             this.Project_Column34.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -2524,6 +2611,19 @@
             this.Column142.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column142.Visible = false;
             // 
+            // Column146
+            // 
+            this.Column146.HeaderText = "éƒ¨ç½²ã‚³ãƒ¼ãƒ‰";
+            this.Column146.Name = "Column146";
+            this.Column146.ReadOnly = true;
+            this.Column146.Visible = false;
+            // 
+            // Column148
+            // 
+            this.Column148.HeaderText = "å·¥äº‹æ‹…å½“è€…";
+            this.Column148.Name = "Column148";
+            this.Column148.Visible = false;
+            // 
             // FrmRequestSummaryList
             // 
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
@@ -2544,6 +2644,7 @@
             this.Controls.Add(this.btnDataEntry);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.DataProgressBar);
             this.Controls.Add(this.dgvCompany);
             this.Controls.Add(this.dgvProject);
             this.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
@@ -2585,7 +2686,6 @@
         private System.Windows.Forms.Button btnDeleteProject;
         private System.Windows.Forms.Button btnDeleteCompany;
         private System.Windows.Forms.Button btnAddCompany;
-        private System.Windows.Forms.Button btnShowView;
         private ProcessManagement.Forms.CustomControls.GroupBoxEx groupBoxEx1;
         private ProcessManagement.Forms.CustomControls.DataGridViewEX dgvProject;
         private System.Windows.Forms.Button btnAddProject;
@@ -2610,6 +2710,12 @@
         private System.Windows.Forms.Panel panel2;
         private System.Windows.Forms.RadioButton rdbProject;
         private System.Windows.Forms.RadioButton rdbCompany;
+        private System.Windows.Forms.ProgressBar DataProgressBar;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.ComboBox cmbPerson;
+        private System.Windows.Forms.Button btnShowView;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column135;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column133;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column71;
@@ -2700,6 +2806,8 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column64;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column139;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column140;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column145;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column147;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column136;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column134;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
@@ -2790,5 +2898,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column77;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column141;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column142;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column146;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column148;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx	(revision 293)
@@ -279,6 +279,12 @@
   <metadata name="Column140.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column145.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column147.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="Column136.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -441,4 +447,10 @@
   <metadata name="Column142.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column146.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column148.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
 </root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(revision 293)
@@ -32,40 +32,535 @@
 {
     partial class FrmRequestSummaryList
     {
-        #region ’è�”
+        #region ƒpƒ‰ƒ��[ƒ^�‰ŠúƒZƒbƒg
+        /// <summary>
+        /// ƒpƒ‰ƒ��[ƒ^�‰ŠúƒZƒbƒg
+        /// </summary>
+        private void SetInitParametar(ref int DepCode, ref int PersonCode)
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // ƒ�ƒjƒ…�[‚©‚ç‚Ì‹N“®Žž‚Í�ˆ—�‚µ‚È‚¢
+                if (m_FirstFlg) return;
 
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(PersonDB.CreatePrimarykeyString(m_PaymentPersonCode));
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL.ToString(), ref PersonRec);
 
+                DepCode = PersonRec.DepartmentCode;
+                PersonCode = PaymentPersonCode;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
         #endregion
 
-        #region •Ï�”
+        #region ƒvƒ�ƒOƒŒƒXƒo�[•\Ž¦�§Œä
+        /// <summary>
+        /// ƒvƒ�ƒOƒŒƒXƒo�[•\Ž¦�§Œä
+        /// </summary>
+        /// <param name="bDisp"></param>
+        private void ProgressBarCtrl(bool bDisp)
+        {
+            try
+            {
+                // ƒvƒ�ƒOƒŒƒXƒo�[•\Ž¦
+                DataProgressBar.Visible = bDisp;
+                DataProgressBar.Minimum = 0;
+                DataProgressBar.Maximum = 0;
+
+                // ƒ{ƒ^ƒ“•\Ž¦
+                btnOtherProc.Visible = !bDisp;
+                btnAddCompany.Visible = !bDisp;
+                btnDeleteCompany.Visible = !bDisp;
+                btnAddProject.Visible = !bDisp;
+                btnDeleteProject.Visible = !bDisp;
+
+                // ƒtƒH�[ƒ€ƒ�ƒbƒN
+                this.Enabled = !bDisp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
         #endregion
 
-        #region ƒvƒ�ƒpƒeƒB
+        #region ƒwƒbƒ_�[•”•\Ž¦�§Œä
+        /// <summary>
+        /// ƒwƒbƒ_�[•”•\Ž¦�§Œä
+        /// </summary>
+        /// <param name="DispType"></param>
+        private void DispHeaderCtrl(int DispType)
+        {
+            try
+            {
+                switch (DispType)
+                {
+                    case (int)HeaderCtrlDef.Type1:
+                        // ----- •”��–³�E’S“–ŽÒ—L
+                        // •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX
+                        label4.Visible = false;
+                        cmbDepartment.Visible = false;
+
+                        // ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX
+                        label11.Visible = false;
+                        cmbPerson.Visible = false;
+
+                        // •\Ž¦Œ`Ž®
+                        label2.Location = label4.Location;
+                        panel2.Location = cmbDepartment.Location;
+
+                        // Žx•¥“ú
+                        label5.Location = label11.Location;
+                        lblPaymentDate.Location = cmbPerson.Location;
+
+                        groupBoxEx1.Height = 40;
+                        Point po = dgvCompany.Location;
+                        po.Y -= 30;
+                        dgvCompany.Location = po;
+                        dgvProject.Location = po;
+                        dgvCompany.Height += 40;
+                        dgvProject.Height += 40;
+
+                        break;
+
+                    case (int)HeaderCtrlDef.Type2:
+                        // ----- •”��–³�E’S“–ŽÒ–³
+                        // •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX
+                        label4.Visible = false;
+                        cmbDepartment.Visible = false;
+
+                        // ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX
+                        label11.Location = label4.Location;
+                        cmbPerson.Location = cmbDepartment.Location;
+                        break;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
         #endregion
 
-        #region �‰Šú’l
+        #region ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
         /// <summary>
-        /// �‰Šú’l
+        /// ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
         /// </summary>
-        private void InitDataLoad()
+        private void InitCombBox(int DepCode, int PersonCode)
         {
-            IOBankBusinessDayMaster IoBbdm = new IOBankBusinessDayMaster();
-            List<BankBusinessDayMaster> LstBbdm = new List<BankBusinessDayMaster>();
+            try
+            {
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // ‘S•”��
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // •¡�”•”��
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // Ž©•”��‚Ì‚Ý
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // Ž©’S“–ŽÒ‚Ì‚Ý
 
-            // ŽèŠÔŽx•¥Šm”F‚©‹ÆŽÒŽx•¥Šm”F‚©‚ð•\Ž¦
-            if (m_Labourkind == (int)CommonDefine.LabourKinds.Labor)
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key
+                    || CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                {
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // •”��ƒRƒ“ƒ{”ñ•\Ž¦
+                        DispHeaderCtrl((int)HeaderCtrlDef.Type2);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // •”���E’S“–ŽÒƒRƒ“ƒ{•\Ž¦–³
+                        DispHeaderCtrl((int)HeaderCtrlDef.Type1);
+                    }
+                }
+
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
+                SetcmbDepartment();
+                SetcmbPersons();
+
+                // ‘�–±‹Æ–±Žg—pŽÒ‚ªƒ�ƒOƒCƒ“‚µ‚Ä‚¢‚é�ê�‡‚ÍƒRƒ“ƒ{‚ð‹ó”’‚É‚·‚é
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)SecurityMaster.GeneAffDef.GeneralDep) return;
+
+                // ƒ�ƒOƒCƒ“ŽÒƒZƒbƒg
+                if (PersonCode > 0)
+                {
+                    cmbDepartment.SelectedValue = DepCode;
+                    cmbPerson.SelectedValue = PersonCode;
+                }
+                else
+                {
+                    InitDepPersonCode();
+                }
+            }
+            catch (Exception ex)
             {
-                CombinedOrderLabel1.Visible = true;
-                CombinedOrderLabel2.Visible = false;
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            else
+            finally
             {
-                CombinedOrderLabel1.Visible = false;
-                CombinedOrderLabel2.Visible = true;
+                // ƒCƒxƒ“ƒgƒZƒbƒg
+                SetControlEvent((int)EventDef.Department | (int)EventDef.Person);
             }
+        }
+        #endregion
 
+        #region •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚Ö•¶Žš‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
             try
             {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                StringBuilder strSQL = new StringBuilder();
+                // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
+                strSQL.Append("SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)");
+                strSQL.Append(" FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C");
+                strSQL.Append(" WHERE A.DELETEFLG = 0");
+
+                if (CommonMotions.LoginUserData.PersonCode != CommonDefine.AdminCode)
+                {
+                    // ŽQ�Æ•”��ƒ}ƒXƒ^‚æ‚èŽæ“¾‚·‚é
+                    strSQL.Append(" AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1");
+                    strSQL.AppendFormat(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                }
+
+                strSQL.Append(" AND A.DEPARTMENTCODE = B.DEPARTMENTCODE");
+                strSQL.Append(" AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE");
+                strSQL.Append(" GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER");
+                strSQL.Append(" ORDER BY A.DISPLAYORDER ASC");
+
+                // •”��ƒ}ƒXƒ^“Ç�ž
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region �‰ŠúŽž‚Éƒ�ƒOƒCƒ“’S“–ŽÒ‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// �‰ŠúŽž‚Éƒ�ƒOƒCƒ“’S“–ŽÒ‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        private void InitDepPersonCode()
+        {
+            try
+            {
+                // ‘I‘ð•”��‚ª•¡�”‚ÌŽÒ‚ÍƒZƒbƒg‚µ‚È‚¢
+                if (cmbDepartment.Items.Count > 2) return;
+                cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                SetcmbPersons();
+                cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX‚Ö•¶Žš‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        private void SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+                cmbPerson.DataSource = null;
+                cmbPerson.Items.Clear();
+                cmbPerson.Text = "";
+
+                int DepartmentCode = GetDepartmentCode();
+                StringBuilder strSQL = new StringBuilder();
+                // ŒŸ�õ�ðŒ�
+                strSQL.AppendFormat(" WHERE LEDGERFLG = {0}", (int)PersonInChargeMaster.LedgerDivNoDef.CalcTarget);
+                strSQL.Append(" AND (DEPARTMENTCODE");
+                StringBuilder strSubSQL = new StringBuilder();
+                if (DepartmentCode == 0)
+                {
+                    // ŽQ�Æ•”��ƒ}ƒXƒ^‚æ‚èŽæ“¾‚·‚é
+                    strSubSQL.AppendFormat(" IN (SELECT AA.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER AA WHERE AA.PERSONCODE = {0})"
+                                            , CommonMotions.LoginUserData.PersonCode);
+                }
+                else
+                {
+                    strSubSQL.AppendFormat(" = {0}", DepartmentCode);
+                }
+                strSQL.Append(strSubSQL.ToString());
+                strSQL.Append(")");
+
+                // “–ŠúŠúŽñ“ú�EŠú––“ú‚ðŽæ“¾
+                DateTime dtDefaultStart = DateTime.MinValue;
+                DateTime dtDefaultEnd = DateTime.MinValue;
+                CreateDefaultStartAndEndDate(ref dtDefaultStart, ref dtDefaultEnd);
+
+                strSQL.AppendFormat(" AND (DATE(STARTDATE) <= STR_TO_DATE('{0}','%Y/%m/%d')", dtDefaultEnd.ToShortDateString());
+                strSQL.AppendFormat(" AND (STR_TO_DATE('{0}','%Y/%m/%d') <= DATE(ENDDATE)", dtDefaultStart.ToShortDateString());
+                strSQL.AppendFormat(" OR STR_TO_DATE('{0}','%Y/%m/%d') = DATE(ENDDATE)))", DateTime.MinValue.ToShortDateString());
+
+                strSQL.Append(" Order By DeleteFlg ASC, EmployeeClassFlg ASC, DisplayOrder ASC");
+                // ’S“–ŽÒƒ}ƒXƒ^“Ç�ž
+                if (!picDB.SelectAction(strSQL.ToString(), ref workList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
+                ComboBoxAction.InitDataSetCombBox(cmbPerson, ConstructionDataList);
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region ’S“–ŽÒ‚æ‚è•”��‚ðŽæ“¾‚·‚é
+        /// <summary>
+        /// ’S“–ŽÒ‚æ‚è•”��‚ðŽæ“¾‚·‚é
+        /// </summary>
+        private int GetDepartment(int Person)
+        {
+            IOMPersonInCharge getdepDB = new IOMPersonInCharge();
+            try
+            {
+                int DepCode = 0;
+                StringBuilder strSQL = new StringBuilder();
+                // ’S“–ŽÒƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
+                strSQL.Append(getdepDB.CreatePrimarykeyString(Person));
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                if (!getdepDB.SelectAction(strSQL.ToString(), ref PersonRec)) return 0;
+
+                DepCode = PersonRec.DepartmentCode;
+                return DepCode;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+            finally
+            {
+                getdepDB.close(); getdepDB = null;
+            }
+        }
+        #endregion
+
+        #region •”��ƒRƒ“ƒ{‚æ‚è’S“–ŽÒƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{‚æ‚è’S“–ŽÒƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region ’S“–ŽÒƒRƒ“ƒ{‚æ‚è’S“–ŽÒƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// <summary>
+        /// ’S“–ŽÒƒRƒ“ƒ{‚æ‚è’S“–ŽÒƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstrPersonCode()
+        {
+            try
+            {
+                return CommonMotions.cnvInt(cmbPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒgŽž•”��‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒgŽž•”��‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚æ‚è‘I‘ð’S“–ŽÒ‚ðŽæ“¾‚·‚é
+                int PersonCode = GetConstrPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚Ö•”��ƒR�[ƒhƒZƒbƒg
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // ’S“–ŽÒƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+                    cmbPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg’Ç‰Á�ˆ—�
+        /// <summary>
+        /// ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg’Ç‰Á�ˆ—�
+        /// </summary>
+        /// <param name="EventCon"></param>
+        private void SetControlEvent(int EventCon)
+        {
+            try
+            {
+                if ((EventCon | (int)EventDef.Department) != 0)
+                {
+                    cmbDepartment.SelectedIndexChanged += new System.EventHandler(cmbDepartment_SelectedIndexChanged);
+                }
+                if ((EventCon | (int)EventDef.Person) != 0)
+                {
+                    cmbPerson.SelectedIndexChanged += new System.EventHandler(cmbPerson_SelectedIndexChanged);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg�í�œ�ˆ—�
+        /// <summary>
+        /// ƒRƒ“ƒgƒ��[ƒ‹ƒCƒxƒ“ƒg�í�œ�ˆ—�
+        /// </summary>
+        /// <param name="EventCon"></param>
+        private void SubControlEvent(int EventCon)
+        {
+            try
+            {
+                if ((EventCon | (int)EventDef.Department) != 0)
+                {
+                    cmbDepartment.SelectedIndexChanged -= new System.EventHandler(cmbDepartment_SelectedIndexChanged);
+                }
+                if ((EventCon | (int)EventDef.Person) != 0)
+                {
+                    cmbPerson.SelectedIndexChanged -= new System.EventHandler(cmbPerson_SelectedIndexChanged);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �‰Šú’l
+        /// <summary>
+        /// �‰Šú’l
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOBankBusinessDayMaster IoBbdm = new IOBankBusinessDayMaster();
+            List<BankBusinessDayMaster> LstBbdm = new List<BankBusinessDayMaster>();
+            try
+            {
+                // ŽèŠÔŽx•¥Šm”F‚©‹ÆŽÒŽx•¥Šm”F‚©‚ð•\Ž¦
+                if (m_Labourkind == (int)CommonDefine.LabourKinds.Labor)
+                {
+                    CombinedOrderLabel1.Visible = true;
+                    CombinedOrderLabel2.Visible = false;
+                }
+                else
+                {
+                    CombinedOrderLabel1.Visible = false;
+                    CombinedOrderLabel2.Visible = true;
+                }
                 // ƒOƒŠƒbƒhƒRƒ“ƒ{ƒf�[ƒ^
                 DataGridViewComboBoxColumn column;
                 column = (DataGridViewComboBoxColumn)dgvCompany.Columns[(int)DispColumn.KyoryokuUmu];
@@ -584,9 +1079,9 @@
         }
         #endregion
 
-        #region Œ»�Ý•\Ž¦‚³‚ê‚Ä‚¢‚éˆê——‚ð•Ô‚·
+        #region Œ»�Ý•\Ž¦‚³‚ê‚Ä‚¢‚éƒOƒŠƒbƒh‚ð•Ô‚·
         /// <summary>
-        /// Œ»�Ý•\Ž¦‚³‚ê‚Ä‚¢‚éˆê——‚ð•Ô‚·
+        /// Œ»�Ý•\Ž¦‚³‚ê‚Ä‚¢‚éƒOƒŠƒbƒh‚ð•Ô‚·
         /// </summary>
         private DataGridView getShowingView()
         {
@@ -621,6 +1116,10 @@
             DataGridViewRow CurRow = dgv.CurrentRow;
             try
             {
+                // �³”F�Ï‚Ý‚Í�ˆ—�‚µ‚È‚¢
+                bool bReadOnly = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.ApprovalEndFlg].Value) == 1 ? true : false;
+                if (bReadOnly) return;
+
                 frm.ConstructionCode = 0;
                 frm.StartupSource = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
 
@@ -637,6 +1136,7 @@
                     if (nConstrCode < 0) return;
                     frm.DispAddUnknown = true;
                 }
+
                 // •s–¾‚Ì‘Î�ˆ‚ÅƒR�[ƒh‚ðƒZƒbƒg‚·‚é
                 frm.SelectData.CompanyCode = nCompanyCode;
                 // ‹¦—Í‰ïŽÐ‘I‘ð•\Ž¦
@@ -650,7 +1150,7 @@
 
                 if (rdbCompany.Checked)
                 {   // ----- ‹ÆŽÒ
-                    InsertdgvCompanySubContr(selRec);
+                    InsdgvCompany2Company(selRec);
                 }
                 else
                 {   // ----- Œ»�ê
@@ -658,7 +1158,7 @@
                     if (DialogResult.Yes.Equals(frm.EndButton))
                         selRec = new SubContractorMaster();
 
-                    InsertdgvProjectSubContr(selRec);
+                    InsdgvProject2Project(selRec);
                 }
             }
             catch (System.Exception ex)
@@ -677,11 +1177,10 @@
         /// ‹ÆŽÒƒOƒŠƒbƒh‹ÆŽÒ’Ç‰Á�ˆ—�
         /// </summary>
         /// <param name="selRec"></param>
-        private void InsertdgvCompanySubContr(SubContractorMaster selRec)
+        private void InsdgvCompany2Company(SubContractorMaster selRec)
         {
             DataGridView dgv = getShowingView();
             int No = 0;
-            int MakeIndex = -1;
             try
             {
                 // Šù‚É‘I‘ð‚³‚ê‚Ä‚¢‚é‹ÆŽÒ‚ð”»’è‚·‚é
@@ -689,10 +1188,15 @@
                                                                                 && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == (int)RowVisibleDef.Visible)
                                                                             .ToArray();
                 bool bInsertRow = true;
-                if (rows.Count() > 1) bInsertRow = false;
+                int nGroupNo = -1;
+                if (rows.Count() > 1)
+                {
+                    bInsertRow = false;
+                    nGroupNo = CommonMotions.cnvInt(rows[0].Cells[(int)DispColumn.GroupSeqNo].Value);
+                }
 
                 // No’l
-                string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
                                                               .Max(x => (string)x.Cells[(int)DispColumn.No].Value.ToString());
                 if (cell == null)
                 {
@@ -703,6 +1207,7 @@
                     No = CommonMotions.cnvInt(cell) + 1;
                 }
 
+                int MakeIndex = -1;
                 MakeIndex = SearchRowIndexCompany(selRec.CompanyCode, true);
 
                 // Šù‚É•\Ž¦‚³‚ê‚Ä‚¢‚é‹ÆŽÒ‚Í�A�¬Œv�s‚Ì�ã‚É•s–¾‚ð’Ç‰Á‚·‚é
@@ -712,7 +1217,7 @@
                 }
 
                 // ƒf�[ƒ^“ü—Í�s
-                MakeNewRow(selRec.CompanyCode, selRec.CompanyName, 0, No, ref MakeIndex, -1, MakeIndex);
+                MakeNewRow(selRec.CompanyCode, selRec.CompanyName, 0, No, ref MakeIndex, nGroupNo, MakeIndex, string.Empty);
                 dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = selRec.DisplayOrder;
                 dgv.Rows[MakeIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Added;
 
@@ -739,7 +1244,7 @@
         /// Œ»�êƒOƒŠƒbƒh‹ÆŽÒ’Ç‰Á�ˆ—�
         /// </summary>
         /// <param name="selRec"></param>
-        private void InsertdgvProjectSubContr(SubContractorMaster selRec)
+        private void InsdgvProject2Project(SubContractorMaster selRec)
         {
             DataGridView dgv = getShowingView();
             DataGridViewRow CurRow = dgv.CurrentRow;
@@ -747,29 +1252,26 @@
             int MakeIndex = -1;
             try
             {
+                // �HŽ–ƒR�[ƒhŽæ“¾
                 int nConstrCode = CommonMotions.cnvInt(CurRow.Cells[m_Genba_Column].Value);
+                if (nConstrCode < 1) return;
 
-                // �HŽ–“à‚ÅŠù‚É‘I‘ð‚³‚ê‚Ä‚¢‚é‹ÆŽÒ‚ð”»’è‚·‚é
-                DataGridViewRow[] rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == nConstrCode
-                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == (int)RowVisibleDef.Visible)
-                                                                            .ToArray();
-
-                // ”O‚Ì‚½‚ßŒ��”‚ðŠm”F‚·‚é
-                if (rows.Count() < 1) return;
-                
                 // �HŽ––¼‚ðŽæ“¾‚·‚é
                 int iNo = 0;
                 string strConstrName = string.Empty;
                 for (int i = CurRow.Index; i >= 0; i--)
                 {
+                    // “¯ˆê�HŽ–“à‚ðŒŸ�õ‚·‚é
                     if (CommonMotions.cnvInt(dgv.Rows[i].Cells[m_Genba_Column].Value) != nConstrCode) break;
+                    // Œ»�ê–¼�Ì‚ª‚ ‚ê‚ÎŽæ“¾‚·‚é
                     if (CommonMotions.cnvString(dgv.Rows[i].Cells[m_GenbaNM_Column].Value).Length > 0)
                         strConstrName = CommonMotions.cnvString(dgv.Rows[i].Cells[m_GenbaNM_Column].Value);
+                    // ‡‚‚ª‚ ‚ê‚ÎŽæ“¾‚·‚é
                     if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispColumn.No].Value) > 0)
                         iNo = CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispColumn.No].Value);
                 }
 
-                // ‘I‘ð‹ÆŽÒ‚ªŠù‚É‚ ‚é‚©‚ð”»’è‚·‚é
+                // ‘I‘ð‹ÆŽÒ‚ª“¯ˆê�HŽ–“à‚É‚ ‚é‚©‚ð”»’è‚·‚é
                 DataGridViewRow[] SelRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == nConstrCode
                                                                                 && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == selRec.CompanyCode
                                                                                 && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == (int)RowVisibleDef.Visible
@@ -780,29 +1282,34 @@
                 bool bLastAdd = true;
                 if (SelRows.Count() > 0) bLastAdd = false;
 
-                if (s_UnknownString.Equals(CommonMotions.cnvString(CurRow.Cells[m_CompanyNM_Column].Value))
-                    && selRec.CompanyCode > 0)
+                if (s_UnknownString.Equals(CommonMotions.cnvString(CurRow.Cells[m_CompanyNM_Column].Value)))
                 {
-                    // •s–¾�s‚Í‚»‚Ì‚Ü‚ÜƒZƒbƒg
-                    MakeIndex = CurRow.Index;
-                    CurRow.Cells[m_Company_Column].Value = selRec.CompanyCode;
-                    CurRow.Cells[m_CompanyNM_Column].Value = selRec.CompanyName;
-                    if (DataRowState.Unchanged.Equals(CurRow.Cells[(int)DispColumn.RowState].Value))
-                        CurRow.Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+                    // ----- •s–¾�s‚Å‚Ì‘I‘ð
+                    if (selRec.CompanyCode > 0)
+                    {
+                        // •s–¾�s‚Å‹ÆŽÒ‚ð‘I‘ð‚µ‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
+                        MakeIndex = CurRow.Index;
+                        CurRow.Cells[m_Company_Column].Value = selRec.CompanyCode;
+                        CurRow.Cells[m_CompanyNM_Column].Value = selRec.CompanyName;
+                        if (cnvRowState(CurRow.Cells[(int)DispColumn.RowState].Value) == DataRowState.Unchanged)
+                            CurRow.Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+                    }
                 }
                 else
                 {
-                    if (!bLastAdd)
+                    // ----- ’Ê�í�s‚Å‚Ì‘I‘ð
+                    if (bLastAdd)
                     {
-                        // ----- ‘¶�Ý‹ÆŽÒ‚Ì�ÅŒã‚É’Ç‰Á‚·‚é
-                        MakeIndex = SelRows[SelRows.Count() - 1].Index + 1;
+                        // ----- �¬Œv�s‚Ì�ã‚É’Ç‰Á‚·‚é
+                        MakeIndex = SearchRowIndexProject(nConstrCode, true) + 1;
                     }
                     else
                     {
-                        // ----- �¬Œv�s‚Ì�ã‚É’Ç‰Á‚·‚é
-                        MakeIndex = SearchRowIndexProject(nConstrCode, true) + 1;
+                        // ----- ‘¶�Ý‹ÆŽÒ‚Ì�ÅŒã‚É’Ç‰Á‚·‚é
+                        int DataCnt = SelRows.Count();
+                        MakeIndex = SelRows[DataCnt].Index;
                     }
-                    // ƒf�[ƒ^“ü—Í�s
+                    // ƒf�[ƒ^�s�ì�¬
                     int nSeqNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.GroupSeqNo].Value);
                     MakeNewRow(selRec.CompanyCode, selRec.CompanyName, nConstrCode, iNo, ref MakeIndex, nSeqNo, MakeIndex, strConstrName);
                     dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = selRec.DisplayOrder;
@@ -921,6 +1428,9 @@
             int iLineCnt = 0;
             int iGoukeiSeqNo = 0;
             int iGoukeiCode = rdbCompany.Checked ? CompanyCode : GenbaCode;
+
+            // ˆê’UƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð–³Œø‚É‚·‚é
+            dgv.CellValueChanged -= DataGridView_CellValueChanged;
             try
             {
                 // �‡Œv—p�s”Ô�†
@@ -942,8 +1452,8 @@
                 if (iGroupSeqNo == -1)
                 {
                     cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
-                                                                            && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
-                                                                  .Max(x => (string)x.Cells[(int)DispColumn.GroupSeqNo].Value.ToString());
+                                                                            && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
+                                                            .Max(x => (string)x.Cells[(int)DispColumn.GroupSeqNo].Value.ToString());
                     if (cell == null)
                     {
                         iGroupSeqNo = 1;
@@ -957,7 +1467,7 @@
                 // �s”Ô�†
                 string lineCnt = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
                                                                           && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iGroupSeqNo
-                                                                          && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                          && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
                                                                  .Max(x => (string)x.Cells[(int)DispColumn.LineCount].Value.ToString());
                 if (lineCnt == null)
                 {
@@ -1012,11 +1522,7 @@
                 dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuKin].Value = "";
                 dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuKinRitu].Value = CommonMotions.SystemMasterData.CooperationRate;
 
-                // ˆê’UƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð–³Œø‚É‚·‚é
-                dgv.CellValueChanged -= DataGridView_CellValueChanged;
                 dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuUmu].Value = -1;
-                // ƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð—LŒø‚É‚·‚é
-                dgv.CellValueChanged += DataGridView_CellValueChanged;
 
                 dgv.Rows[iIndex].Cells[(int)DispColumn.CyuumonshoTeisyutu].Value = "";
                 dgv.Rows[iIndex].Cells[(int)DispColumn.CyuumonshoTouchaku].Value = "";
@@ -1046,7 +1552,11 @@
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-
+            finally
+            {
+                // ƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð—LŒø‚É‚·‚é
+                dgv.CellValueChanged += DataGridView_CellValueChanged;
+            }
         }
         #endregion
 
@@ -1054,7 +1564,7 @@
         /// <summary>
         /// �HŽ–ˆÄŒ�‘I‘ðƒ_ƒCƒAƒ�ƒO•\Ž¦
         /// </summary>
-        private void ShowSubLocationDiag()
+        private void ShowProjectDiag()
         {
             FrmConstructionDiag frm = new FrmConstructionDiag();
             IOConstructionBaseInfo IoCbi = new IOConstructionBaseInfo();
@@ -1091,14 +1601,13 @@
                 if (DialogResult.Cancel.Equals(frm.EndButton)) return;
 
                 int nNewMakeRowIndex = -1;
-                if (rdbCompany.Checked)         // ‹ÆŽÒ
-                {
-                    int nSeqNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.GroupSeqNo].Value);
-                    InsertdgvCompanyConstr(nCompnyCode, frm.ConstructionCode, frm.ConstructionName, nSeqNo, ref nNewMakeRowIndex);
+                if (rdbCompany.Checked)
+                {   // ----- ‹ÆŽÒ
+                    InsdgvCompany2Project(nCompnyCode, frm.ConstructionCode, frm.ConstructionName, ref nNewMakeRowIndex);
                 }
-                else if (rdbProject.Checked)    // Œ»�ê
-                {
-                    InsertdgvProjectConstr(nCompnyCode, frm.ConstructionCode, frm.ConstructionName, ref nNewMakeRowIndex);
+                else if (rdbProject.Checked)
+                {   // ----- Œ»�ê
+                    InsdgvProject2Company(nCompnyCode, frm.ConstructionCode, frm.ConstructionName, ref nNewMakeRowIndex);
                 }
 
                 if (frm.ConstructionCode < 1) return;
@@ -1167,7 +1676,9 @@
         /// <summary>
         /// ‹ÆŽÒƒOƒŠƒbƒhŒ»�ê’Ç‰Á�ˆ—�
         /// </summary>
-        private void InsertdgvCompanyConstr(int nCompanyCode, int nConstructionCode, string strConstructionName, int nSeqNo
+        private void InsdgvCompany2Project(int nCompanyCode
+                                            , int nConstructionCode
+                                            , string strConstructionName
                                             , ref int nNewMakeRowIndex)
         {
             try
@@ -1204,24 +1715,26 @@
                     MakeIndex = CurRow.Index;
                     CurRow.Cells[m_Genba_Column].Value = nConstructionCode;
                     CurRow.Cells[m_GenbaNM_Column].Value = strConstructionName;
-                    if (DataRowState.Unchanged.Equals(CurRow.Cells[(int)DispColumn.RowState].Value))
+                    if (cnvRowState(CurRow.Cells[(int)DispColumn.RowState].Value) == DataRowState.Unchanged)
                         CurRow.Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
                 }
                 else
                 {
-                    if (!bLastAdd)
+                    if (bLastAdd)
                     {
-                        // ----- ‘¶�Ý‹ÆŽÒ‚Ì�ÅŒã‚É’Ç‰Á‚·‚é
-                        MakeIndex = SelRows[SelRows.Count() - 1].Index;
+                        // ----- �¬Œv�s‚Ì�ã‚É’Ç‰Á‚·‚é
+                        MakeIndex = SearchRowIndexCompany(nCompanyCode, false) + 1;
                     }
                     else
                     {
-                        // ----- �¬Œv�s‚Ì�ã‚É’Ç‰Á‚·‚é
-                        MakeIndex = SearchRowIndexCompany(nCompanyCode, false);
+                        // ----- ‘¶�Ý‹ÆŽÒ‚Ì�ÅŒã‚É’Ç‰Á‚·‚é
+                        int DataCnt = SelRows.Count();
+                        MakeIndex = SelRows[DataCnt].Index;
                     }
 
                     // �s�ì�¬
-                    MakeNewRow(nCompanyCode, strCompnyName, nConstructionCode, 0, ref MakeIndex, -1, MakeIndex + 1, strConstructionName);
+                    int nSeqNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.GroupSeqNo].Value);
+                    MakeNewRow(nCompanyCode, strCompnyName, nConstructionCode, 0, ref MakeIndex, nSeqNo, MakeIndex, strConstructionName);
                     dgv.Rows[MakeIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Added;
                 }
                 
@@ -1238,7 +1751,7 @@
         /// <summary>
         /// Œ»�êƒOƒŠƒbƒhŒ»�ê’Ç‰Á�ˆ—�
         /// </summary>
-        private void InsertdgvProjectConstr(int nCompanyCode, int nConstructionCode, string strConstructionName, ref int nNewMakeRowIndex)
+        private void InsdgvProject2Company(int nCompanyCode, int nConstructionCode, string strConstructionName, ref int nNewMakeRowIndex)
         {
             try
             {
@@ -1257,7 +1770,7 @@
                     // ----- Šù‚É‚ ‚é�ê�‡
                 if (!bLastAdd)
                 {
-                    if (DataRowState.Deleted.Equals(Rows[0].Cells[(int)DispColumn.RowState].Value))
+                    if (cnvRowState(Rows[0].Cells[(int)DispColumn.RowState].Value) == DataRowState.Deleted)
                     {
                         // ----- �í�œ‚³‚ê‚Ä‚¢‚½�ê�‡
                         Rows[0].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
@@ -1459,7 +1972,7 @@
 
                 DataGridViewRow[] ExistenceData = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
+                        && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Added)
                         .ToArray();
 
                 if (ExistenceData.Count() == 0)
@@ -1783,7 +2296,8 @@
                     if (ShoukeiRowIndex == -1) return;
 
                     //�¦Œã‚É‰ïŽÐ�î•ñ‚©‚çŽæ“¾‚³‚ê‚é (Žb’è“I‚É’è�”’l—˜—p)                        �@
-                    //dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
+                    //dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value)
+                    // * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
                     //dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * 0.08);
                     dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value)
                                                                             * (CommonMotions.SystemMasterData.ConsumptionTax / 100));
@@ -2339,7 +2853,7 @@
         /// </summary>
         /// <param name="dgv"></param>
         /// <param name="NowPoint"></param>
-        private void SetApprovalInfoData(DataGridView dgv, ref ArrayList DataList, bool bPettion = false)
+        private void SetApprovalInfoData(ref ArrayList DataList, bool bPettion = false)
         {
             try
             {
@@ -2347,13 +2861,14 @@
                 int LineCount = 0;
                 int SeqNo = 0;
 
-                int ApprovalNo = 0;
-                int ApprovalPerson = 0;
-                int PettionPerson = 0;
+                //int ApprovalNo = 0;
+                //int ApprovalPerson = 0;
+                //int PettionPerson = 0;
                 string ApprovalPersonName = string.Empty;
-                int ApprovalAuthority = 0;
+                //int ApprovalAuthority = 0;
                 DateTime dtApproval = DateTime.MinValue;
 
+                DataGridView dgv = getShowingView();
                 foreach (DataGridViewRow CurRow in dgv.Rows)
                 {
                     // ”ñ•\Ž¦�s‚Í‘Î�ÛŠO
@@ -2364,41 +2879,41 @@
                     SeqNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.GroupSeqNo].Value);
                     if (CompanyCode == 0) continue;
 
-                    // �\�¿Žž‚Í�\�¿‘Î�Û‚Ì‚ÝƒZƒbƒg‚·‚é
-                    if (bPettion)
-                    {
-                        PettionPerson = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.TantoShoninCode].Value);
-                        if (PettionPerson != CommonMotions.LoginUserData.PersonCode) continue;
-                    }
+                    //// �\�¿Žž‚Í�\�¿‘Î�Û‚Ì‚ÝƒZƒbƒg‚·‚é
+                    //if (bPettion)
+                    //{
+                    //    PettionPerson = CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.TantoShoninCode].Value);
+                    //    if (PettionPerson != CommonMotions.LoginUserData.PersonCode) continue;
+                    //}
 
-                    for (int i = (int)DispColumn.Shonin1Code; i < (int)DispColumn.Bikou; i += s_ShoninBlockCnt)
-                    {
+                    //for (int i = (int)DispColumn.Shonin1Code; i < (int)DispColumn.Bikou; i += s_ShoninBlockCnt)
+                    //{
 
-                        ApprovalNo = CommonMotions.cnvInt(CurRow.Cells[i + s_ShoninNoCnt].Value);
-                        ApprovalPerson = CommonMotions.cnvInt(CurRow.Cells[i].Value);
-                        ApprovalPersonName = CommonMotions.cnvString(CurRow.Cells[i + s_ShoninPersonNameCnt].Value);
-                        ApprovalAuthority = CommonMotions.cnvInt(CurRow.Cells[i + s_ShoninAuthorityCnt].Value);
-                        dtApproval = CommonMotions.cnvDate(CurRow.Cells[i + s_ShoninDateCnt].Value);
-                        if (ApprovalPerson == 0) continue;
+                    //    ApprovalNo = CommonMotions.cnvInt(CurRow.Cells[i + s_ShoninNoCnt].Value);
+                    //    ApprovalPerson = CommonMotions.cnvInt(CurRow.Cells[i].Value);
+                    //    ApprovalPersonName = CommonMotions.cnvString(CurRow.Cells[i + s_ShoninPersonNameCnt].Value);
+                    //    ApprovalAuthority = CommonMotions.cnvInt(CurRow.Cells[i + s_ShoninAuthorityCnt].Value);
+                    //    dtApproval = CommonMotions.cnvDate(CurRow.Cells[i + s_ShoninDateCnt].Value);
+                    //    if (ApprovalPerson == 0) continue;
 
-                        // �\�¿ŽžˆÈŠO‚Í‘Î�Û‚Ì‚ÝƒZƒbƒg‚·‚é
-                        //if (!bPettion && (ApprovalPerson != CommonMotions.LoginUserData.PersonCode)) continue;
-                        if (ApprovalPerson != CommonMotions.LoginUserData.PersonCode) continue;
+                    //    // �\�¿ŽžˆÈŠO‚Í‘Î�Û‚Ì‚ÝƒZƒbƒg‚·‚é
+                    //    if (!bPettion && (ApprovalPerson != CommonMotions.LoginUserData.PersonCode)) continue;
+                        //if (ApprovalPerson != CommonMotions.LoginUserData.PersonCode) continue;
 
                         PaymentApprovalInfo DataRec = new PaymentApprovalInfo();
                         DataRec.CompanyCode = CompanyCode;                  // ‹¦—Í‰ïŽÐƒR�[ƒh
-                        DataRec.TargetDate = m_Select_TargetDate;           // ‘Î�Û”NŒŽ     
+                        DataRec.TargetDate = m_Select_TargetDate;           // ‘Î�Û”NŒŽ
                         DataRec.SeqNo = SeqNo;                              // ˜A”Ô
-                        DataRec.LineCount = LineCount;                      // �s”Ô�†    
+                        DataRec.LineCount = LineCount;                      // �s”Ô�†
 
-                        DataRec.ApprovalNo = ApprovalNo;                    // �³”F�‡�˜    
-                        DataRec.ApprovalPerson = ApprovalPerson;            // �³”FŽÒ”Ô�†
-                        DataRec.ApprovalPersonName = ApprovalPersonName;    // �³”FŽÒ–¼
-                        DataRec.ApprovalAuthority = ApprovalAuthority;      // �³”FŒ ŒÀ
-                        DataRec.ApprovalDate = dtApproval;                  // �³”F“ú•t
+                        //DataRec.ApprovalNo = ApprovalNo;                    // �³”F�‡�˜
+                        //DataRec.ApprovalPerson = ApprovalPerson;            // �³”FŽÒ”Ô�†
+                        //DataRec.ApprovalPersonName = ApprovalPersonName;    // �³”FŽÒ–¼
+                        //DataRec.ApprovalAuthority = ApprovalAuthority;      // �³”FŒ ŒÀ
+                        //DataRec.ApprovalDate = dtApproval;                  // �³”F“ú•t
 
                         DataList.Add(DataRec);
-                    }
+                    //}
                 }
             }
             catch (Exception ex)
@@ -2408,6 +2923,49 @@
         }
         #endregion
 
+        #region ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é‚©‚Ìƒ`ƒFƒbƒN
+        /// <summary>
+        /// ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é‚©‚Ìƒ`ƒFƒbƒN
+        /// </summary>
+        private bool CmbDataSelectCheck()
+        {
+            try
+            {
+                int SelDepCode = GetDepartmentCode();
+                int SelPersonCode = GetConstrPersonCode();
+
+                // •”���E’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚ê‚ÎOK
+                if (SelDepCode != 0 && SelPersonCode != 0) return true;
+
+                if (SelDepCode == 0 && SelPersonCode == 0)
+                {
+                    MessageBox.Show("•”���E’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ", "‘I‘ðƒGƒ‰�["
+                                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                else if (SelDepCode == 0 && SelPersonCode != 0)
+                {
+                    MessageBox.Show("•”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ", "‘I‘ðƒGƒ‰�["
+                                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                else if (SelDepCode != 0 && SelPersonCode == 0)
+                {
+                    MessageBox.Show("’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ", "‘I‘ðƒGƒ‰�["
+                                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region �\�¿ƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
         /// <summary>
         /// �\�¿ƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
@@ -2422,7 +2980,7 @@
                 // ‹N“®”Ô�†
                 int NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ApprovalPerson);
                 // ’S“–ŽÒƒR�[ƒh
-                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonMotions.LoginUserData.PersonCode);
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(GetConstrPersonCode());
                 // �³”F‹@”\”Ô�†
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals(s_MyProcessName[m_Labourkind])).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
@@ -2432,17 +2990,15 @@
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
 
                 // ----- Žx•¥�³”F�î•ñƒf�[ƒ^ƒZƒbƒg
-                DataGridView dgv = getShowingView();
                 ArrayList DataList = new ArrayList();
                 ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
-                SetApprovalInfoData(dgv, ref DataList, true);
+                SetApprovalInfoData(ref DataList, true);
                 if (DataList.Count > 0) ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Add(DataList);
 
                 m_CloseingProcessOff = false;
                 // Ž©ƒtƒH�[ƒ€�I—¹
                 this.Close();
-                // ˆê‹C‚Éƒ�ƒjƒ…�[‚Ö
-                //ClsExcute.ClearProcess();
+
             }
             catch (Exception ex)
             {
@@ -2514,10 +3070,9 @@
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
 
                 // ----- Žx•¥�³”F�î•ñƒf�[ƒ^
-                DataGridView dgv = getShowingView();
                 ArrayList DataList = new ArrayList();
                 ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Clear();
-                SetApprovalInfoData(dgv, ref DataList);
+                SetApprovalInfoData(ref DataList);
                 if (DataList.Count > 0) ClsExcute.ProcControlPara[NowPoint].ArrayParameter.Add(DataList);
 
                 // Ž©ƒtƒH�[ƒ€�I—¹
@@ -2557,10 +3112,9 @@
                 frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // ----- Žx•¥�³”F�î•ñƒf�[ƒ^
-                DataGridView dgv = getShowingView();
                 ArrayList DataList = new ArrayList();
-                SetApprovalInfoData(dgv, ref DataList);
                 frm.ArrayParam.Clear();
+                SetApprovalInfoData(ref DataList);
                 if (DataList.Count > 0) frm.ArrayParam.Add(DataList);
 
                 // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
@@ -2614,10 +3168,9 @@
                 frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // ----- Žx•¥�³”F�î•ñƒf�[ƒ^
-                DataGridView dgv = getShowingView();
                 ArrayList DataList = new ArrayList();
-                SetApprovalInfoData(dgv, ref DataList);
                 frm.ArrayParam.Clear();
+                SetApprovalInfoData(ref DataList);
                 if (DataList.Count > 0) frm.ArrayParam.Add(DataList);
 
                 // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
@@ -2671,10 +3224,9 @@
                 frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // ----- Žx•¥�³”F�î•ñƒf�[ƒ^
-                DataGridView dgv = getShowingView();
                 ArrayList DataList = new ArrayList();
-                SetApprovalInfoData(dgv, ref DataList);
                 frm.ArrayParam.Clear();
+                SetApprovalInfoData(ref DataList);
                 if (DataList.Count > 0) frm.ArrayParam.Add(DataList);
 
                 // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
@@ -2820,26 +3372,23 @@
         /// ƒOƒŠƒbƒh•\Ž¦
         /// </summary>
         /// <returns></returns>
-        private bool DispGridData()
+        private void DispGridData()
         {
             IOBillingData IoBd = new IOBillingData();
             ArrayList arData = new ArrayList();
 
-            int DataGoukeiCd_Column = 0;
-            int iShoninColumn = 0;
-
             List<ShoninData> lstDefaultShonin = new List<ShoninData>();
-            List<PaymentApprovalInfo> PaIList = new List<PaymentApprovalInfo>();
 
             IOConstructionBaseInfo IoCbi = new IOConstructionBaseInfo();
             IOMPersonInCharge IoMpic = new IOMPersonInCharge();
             ConstructionBaseInfo Cbi = new ConstructionBaseInfo();
             PersonInChargeMaster Picm = new PersonInChargeMaster();
-            string KojiTanto = "", KojiTantoCode = "";
-            int ConstrDepartmentCode = 0;
 
             DataGridView dgv = getShowingView();
 
+            // ƒvƒ�ƒOƒŒƒX•\Ž¦�§Œä
+            ProgressBarCtrl(true);
+
             // ˆê’UƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð–³Œø‚É‚·‚é
             dgv.CellValueChanged -= DataGridView_CellValueChanged;
 
@@ -2848,48 +3397,50 @@
 
             try
             {
-                // �‡Œv’l�sŽZ�o‚Ì’PˆÊ
-                if (rdbCompany.Checked)
-                {
-                    DataGoukeiCd_Column = (int)ClickGetData.COMPANYCODE;
-                }
-                else
-                {
-                    DataGoukeiCd_Column = (int)ClickGetData.CONSTRUCTIONCODE;
-                }
-
                 // ‘€�ì‰Â•s‰Â�Ø‚è‘Ö‚¦
                 DataGridView_ReadOnlyChange(dgv);
 
-
                 // ‘I‘ð‘Î�ÛŒŽ‚Ì‘Þ”ð
                 m_Select_TargetDate = CommonMotions.cnvInt(cmbTargetMonth.SelectedValue);
 
+                StringBuilder sql = new StringBuilder();
+                bool bNewData = false;
                 // SQL�ì�¬
-                StringBuilder sql = new StringBuilder();
-                if (m_PaInfo != null)
+                CreateSQLType2Exists(m_PaInfo, ref sql);
+
+                // Order By Set
+                SetSQLOrder(ref sql);
+
+                // ƒf�[ƒ^Žæ“¾�@�¬Œv�E�‡Œv‚ðŒvŽZ‚·‚éˆ×�A‘S‚Ä‚Ìƒf�[ƒ^‚ðŽæ“¾‚·‚é
+                if (!IoBd.ExecuteReader(sql.ToString(), ref arData)) return;
+
+                if (m_PaInfo == null)
                 {
-                    // ’S“–ŽÒ�³”F‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬
-                    CreateSQLType1(m_PaInfo, ref sql);
+                    if (arData.Count < 1)
+                    {
+                        bNewData = true;
+                        // ƒ�ƒjƒ…�[‰æ–Ê‚©‚ç‚Ì‘JˆÚŽž‚Éƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í�V‹KŽæ“¾
+                        sql.Clear();
+                        CreateSQLType2Newly(m_PaInfo, ref sql);
+                        SetSQLOrder(ref sql);
+                        if (!IoBd.ExecuteReader(sql.ToString(), ref arData)) return;
+                    }
                 }
-                else
-                {
-                    // ƒ�ƒjƒ…�[‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬
-                    CreateSQLType2(m_PaInfo, ref sql);
-                }
 
-                if (rdbCompany.Checked)         // ‹ÆŽÒ’PˆÊ•\Ž¦
+                DataProgressBar.Maximum = arData.Count;
+                DataProgressBar.Value = 0;
+
+                // �‡Œv’l�sŽZ�o‚Ì’PˆÊ
+                int DataGoukeiCd_Column = 0;
+                if (rdbCompany.Checked)
                 {
-                    sql.AppendLine(" order by CompanyCode ASC, SeqNo ASC, LineCount ASC, ConstructionCode ASC ");
+                    DataGoukeiCd_Column = (int)ClickGetData.COMPANYCODE;
                 }
-                else if (rdbProject.Checked)    // Œ»�ê’PˆÊ•\Ž¦
+                else
                 {
-                    sql.AppendLine(" order by ConstructionPersonCode ASC, ConstructionCode DESC, DisplayOrder ASC, SEQNO ASC, LineCount ASC ");
+                    DataGoukeiCd_Column = (int)ClickGetData.CONSTRUCTIONCODE;
                 }
 
-                // ƒf�[ƒ^Žæ“¾�@�¬Œv�E�‡Œv‚ðŒvŽZ‚·‚éˆ×�A‘S‚Ä‚Ìƒf�[ƒ^‚ðŽæ“¾‚·‚é
-                if (!IoBd.ExecuteReader(sql.ToString(), ref arData)) return false;
-
                 // ƒf�[ƒ^•\Ž¦
                 int icnt = 0;
                 int iNo = 1;
@@ -2897,8 +3448,11 @@
                 int iGoukeiCd = -1;
                 int iDataCount = 0;
                 int iShoninMaxCount = 0;
-                foreach (object[] work in arData)
+                string strErrorMsg = string.Empty;
+                for (int ix = 0; ix < arData.Count; ix++)
                 {
+                    object[] work = (object[])arData[ix];
+
                     // �‡Œv�s�ì�¬
                     if (iGoukeiCd != CommonMotions.cnvInt(work[DataGoukeiCd_Column]))
                     {
@@ -2927,175 +3481,32 @@
                         iGoukeiCd = CommonMotions.cnvInt(work[DataGoukeiCd_Column]);
                     }
 
-                    dgv.Rows.Add();
+                    // �s�ì�¬
+                    if (!CreateLineData(arData, iNo, iGoukeiSeq, bNewData, ref ix, ref strErrorMsg, ref iShoninMaxCount, ref icnt))
+                        throw new Exception(strErrorMsg);
 
-                    // ƒOƒŠƒbƒhƒf�[ƒ^ƒZƒbƒg
-                    SetGridData(icnt, iNo, iGoukeiSeq, work);
-
-                    // ’S“–ŽÒ�³”F
-                    bool ApprovalPerson = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalPersonCode]) != 0 ? true : false;
-                    bool SekininApproval = false;
-                    if (ApprovalPerson == true)
-                    {
-                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalPersonCode]);
-                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = CommonMotions.cnvString(work[(int)ClickGetData.TantoNM]);
-                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoDate].Value = CommonMotions.cnvString(work[(int)ClickGetData.ApprovalDate]);
-
-                        // ’S“–�³”F�Ïƒf�[ƒ^
-                        iShoninColumn = (int)DispColumn.Shonin1Code;
-                        if (!GetShonin(CommonMotions.cnvInt(work[(int)ClickGetData.COMPANYCODE]),
-                                        CommonMotions.cnvInt(work[(int)ClickGetData.SEQNO]),
-                                        CommonMotions.cnvInt(work[(int)ClickGetData.LINECOUNT]),
-                                        ref PaIList)) return false;
-                        
-                        iShoninMaxCount = iShoninMaxCount < PaIList.Count ? PaIList.Count : iShoninMaxCount;
-                        foreach (PaymentApprovalInfo pair in PaIList)
-                        {
-                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalPerson;
-                            if (pair.ApprovalDate.Date == DateTime.MinValue.Date)
-                            {
-                                dgv.Rows[icnt].Cells[iShoninColumn].Style.ForeColor = Color.Gray;
-                            }
-                            else
-                            {
-                                // �³”FŽÒ–¢�³”F‚Å�Š‘®’·�A“�Š‡ŽÒ‚Ì�ê�‡
-                                if (SekininApproval == false 
-                                    && (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.LimitedAuthority
-                                        || m_UserInfo.m_Type == CommonDefine.SecurityRankPos.FreeAuthority))
-                                {
-                                    if (CommonMotions.LoginUserData.PersonCode == pair.ApprovalPerson)
-                                    {
-                                        SekininApproval = true;
-                                    }
-                                }
-                            }
-                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalPersonName;
-                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalDate;
-                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalAuthority;
-                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalNo;
-                        }
-
-                    }
-                    else
-                    {
-                        //Œ»�ê‚ªŒˆ‚Ü‚Á‚Ä‚¢‚é‚ª–¢�³”F
-                        if (CommonMotions.cnvInt(dgv.Rows[icnt].Cells[m_Genba_Column].Value) != 0)
-                        {
-                            // ‘I‘ð‚µ‚½�HŽ–‚Ì�HŽ–’S“–ŽÒ‚Ì•”��‹æ•ª‚ðŽæ“¾‚·‚é
-
-                            string sWhere = IoCbi.CreatePrimarykeyString(CommonMotions.cnvInt(dgv.Rows[icnt].Cells[m_Genba_Column].Value));
-                            if (!IoCbi.SelectAction(sWhere, ref Cbi)) throw new Exception("�HŽ–Šî–{�î•ñŽæ“¾ƒGƒ‰�[");
-
-                            sWhere = IoMpic.CreatePrimarykeyString(Cbi.ConstructionPersonCode);
-                            if (!IoMpic.SelectAction(sWhere, ref Picm)) throw new Exception("’S“–ŽÒƒ}ƒXƒ^Žæ“¾ƒGƒ‰�[");
-                            ConstrDepartmentCode = Picm.DepartmentCode;
-
-                            //�HŽ–’S“–ŽÒ
-                            KojiTantoCode = Picm.PersonCode.ToString();
-                            KojiTanto = Picm.SealPrintName;
-
-                            //’S“–ŽÒ�³”F�Ý’è
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = KojiTantoCode;
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = KojiTanto;
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
-
-                            // ’S“–ŽÒ–¢�³”Fƒf�[ƒ^
-                            int iDefaultDataCount = 0;
-                            if (!SetDefaultShonin(dgv, icnt, ConstrDepartmentCode, ref iDefaultDataCount)) return false;
-                            iShoninMaxCount = iShoninMaxCount < iDefaultDataCount ? iDefaultDataCount : iShoninMaxCount;
-                        }
-                        else
-                        {
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = "";
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = "";
-                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
-                        }
-
-                    }
-
-                    // ”õ�l�Ý’è
-                    dgv.Rows[icnt].Cells[(int)DispColumn.Bikou].Value = CommonMotions.cnvString(work[(int)ClickGetData.Bikou]);
-                    // �HŽ–�Ú�×‘ä’ ‚Ì�s”Ô�†�A—ñ”Ô�†‚ð�Ý’è
-                    dgv.Rows[icnt].Cells[(int)DispColumn.ConstructionLedgerLineNo].Value = CommonMotions.cnvString(work[(int)ClickGetData.ConstructionLedgerLineNo]);
-                    dgv.Rows[icnt].Cells[(int)DispColumn.ConstructionLedgerColNo].Value = CommonMotions.cnvString(work[(int)ClickGetData.ConstructionLedgerRowNo]);
-
-                    // –¾�×–¼�ÌƒZƒbƒg
-                    dgv.Rows[icnt].Cells[(int)DispColumn.DetailName].Value = CommonMotions.cnvString(work[(int)ClickGetData.DetailName]);
-
                     // Œ ŒÀ‚É‚æ‚Á‚Ä•\Ž¦”ñ•\Ž¦
                     // �‰Šú’l‚Í‰ÂŽ‹
                     dgv.Rows[icnt].Visible = true;
                     dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
 
+                    work = (object[])arData[ix];
                     // •s–¾ˆÈŠO
                     if (CommonMotions.cnvInt(work[(int)ClickGetData.CONSTRUCTIONCODE]) != 0)
                     {
-                        // •s–¾ˆÈŠO‚Íˆê’U•s‰ÂŽ‹‚É‚·‚é
-                        dgv.Rows[icnt].Visible = false;
-                        dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.UnVisible;
+                        int DepCode = GetDepartmentCode();
+                        int PersonCode = GetConstrPersonCode();
 
-                        // ‘�–±’S“–
-                        if (m_UserInfo.m_GeneralAffairsFlg == (int)SecurityMaster.GeneAffDef.GeneralDep)
+                        if (DepCode == 0 && PersonCode == 0)
                         {
-                            // •ÛŒì‹æ•ª”ÍˆÍ‚ÉŠÖŒW‚È‚­‘S•”��‚ÌŽQ�Æ‚ð‰Â”\‚Æ‚µ�A•Ò�W‰Â”\�€–Ú‚Í‘�–±•”–å“ü—Í—“‚Ì‚Ý‚Æ‚·‚é�B
-                            dgv.Rows[icnt].Visible = true;
-                            dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                            // •”���E’S“–ŽÒ‘I‘ð–³‚µ
+                            RowVisibleControlAll(icnt, work);
                         }
-                        // “Á•ÊŒ ŒÀ‚Ì�ê�‡
-                        else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.SpecialAuthority)
+                        else
                         {
-                            // •ÛŒì‹æ•ª”ÍˆÍ‚ÉŠÖŒW‚È‚­‘S•”��‚ÌŽQ�Æ‚ð‰Â”\‚Æ‚µ�A‘�–±•”–å“ü—Í—“ˆÈŠO‚Í•Ò�W‰Â”\‚Æ‚·‚é�B
-                            dgv.Rows[icnt].Visible = true;
-                            dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                            // •”���E’S“–ŽÒ‘I‘ð‚ ‚è
+                            RowVisibleControlSelect(icnt);
                         }
-                        // �Š‘®’·�A“�Š‡ŽÒ‚Ì�ê�‡
-                        else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.LimitedAuthority || m_UserInfo.m_Type == CommonDefine.SecurityRankPos.FreeAuthority)
-                        {
-                            // ŽQ�Æ•”��‚É‚ ‚é‚©‚Ìƒ`ƒFƒbƒN
-                            foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserDepartment)
-                            {
-                                // Ž©•ª‚ªŒ ŒÀ‚ð•ÛŽ�‚·‚é•”��‚Ì�HŽ–‚Ì‚Ý•\Ž¦‚·‚é
-                                if (RefDepRec.DepartmentCode != CommonMotions.cnvInt(work[(int)ClickGetData.DepartmentCode]))
-                                {
-                                    dgv.Rows[icnt].Visible = true;
-                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
-                                }
-                            }
-                        }
-                        // ’S“–ŽÒ‚Ì�ê�‡
-                        else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.NormalAuthority)
-                        {
-                            if (m_UserInfo.m_SecRange == ClsSecurityPermission.SecRangeType.InCharge)
-                            {
-                                // ‰c‹Æ’S“–
-                                if (CommonMotions.LoginUserData.PersonCode == CommonMotions.cnvInt(work[(int)ClickGetData.SalesPersonCode]))
-                                {
-                                    dgv.Rows[icnt].Visible = true;
-                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
-                                }
-                                // �HŽ–’S“–
-                                if (CommonMotions.LoginUserData.PersonCode == CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionPersonCode])
-                                    || CommonMotions.LoginUserData.PersonCode == CommonMotions.cnvInt(work[(int)ClickGetData.ConstrSubPersonCode])
-                                    || CommonMotions.LoginUserData.PersonCode == CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionInstructor]))
-                                {
-                                    dgv.Rows[icnt].Visible = true;
-                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
-                                }
-                            }
-                            else if (m_UserInfo.m_SecRange == ClsSecurityPermission.SecRangeType.OneDepartment)
-                            {
-                                // ŽQ�Æ•”��‚É‚ ‚é‚©‚Ìƒ`ƒFƒbƒN
-                                foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserDepartment)
-                                {
-                                    // Ž©•ª‚ªŒ ŒÀ‚ð•ÛŽ�‚·‚é•”��‚Ì�HŽ–‚Ì‚Ý•\Ž¦‚·‚é
-                                    if (RefDepRec.DepartmentCode != CommonMotions.cnvInt(work[(int)ClickGetData.DepartmentCode]))
-                                    {
-                                        dgv.Rows[icnt].Visible = true;
-                                        dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
-                                    }
-                                }
-                            }
-                        }
                     }
 
                     if (CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalEndFlg]) == 1)
@@ -3104,9 +3515,10 @@
                         dgv.Rows[icnt].ReadOnly = true;
                     }
 
-                    icnt++;
                     iGoukeiSeq++;
 
+                    DataProgressBar.Value++;
+                    DataProgressBar.Update();
                 }
 
                 // –¾�×•\Ž¦‚³‚ê‚Ä‚¢‚éƒf�[ƒ^Œ��”ƒ`ƒFƒbƒN
@@ -3127,12 +3539,11 @@
 
                 // �Å‘å�³”F�”ˆÈ�~‚Ì�³”F—ñ‚Í”ñ•\Ž¦
                 //ˆê’U‰ÂŽ‹‚É‚µ‚Ä‚©‚ç�A•s‰ÂŽ‹‚É•Ï�X
-                int i;
-                for (i = (int)DispColumn.Shonin1; i < (int)DispColumn.Bikou; i += 5)
+                for (int i = (int)DispColumn.Shonin1; i < (int)DispColumn.Bikou; i += s_ShoninBlockCnt)
                 {
                     dgv.Columns[i].Visible = true;
                 }
-                for (i = (int)DispColumn.Shonin1 + (iShoninMaxCount * 5); i < (int)DispColumn.Bikou; i++)
+                for (int i = (int)DispColumn.Shonin1 + (iShoninMaxCount * s_ShoninBlockCnt); i < (int)DispColumn.Bikou; i++)
                 {
                     dgv.Columns[i].Visible = false;
                 }
@@ -3146,12 +3557,14 @@
 
                 m_bChengeAns = false;
 
-                return true;
+                // ProgressBar‚Ì’l‚ð•Ï�X‚·‚é
+                DataProgressBar.Value = DataProgressBar.Maximum;
+                DataProgressBar.Update();
+
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
             }
             finally
             {
@@ -3161,50 +3574,238 @@
                 IoBd.close(); IoBd = null;
                 IoCbi.close(); IoCbi = null;
                 IoMpic.close(); IoMpic = null;
+
+                // ƒvƒ�ƒOƒŒƒX•\Ž¦�§Œä
+                ProgressBarCtrl(false);
             }
         }
         #endregion
 
-        #region Žx•¥�³”F�î•ñƒf�[ƒ^‚æ‚è�A�³”FŽÒ‚ðŽæ“¾
+        #region •\Ž¦�s‚Ì�ì�¬
         /// <summary>
-        /// Žx•¥�³”F�î•ñƒf�[ƒ^‚æ‚è�A�³”FŽÒ‚ðŽæ“¾
+        /// •\Ž¦�s‚Ì�ì�¬
         /// </summary>
-        /// <param name="CompanyCode"></param>
-        /// <param name="SeqNo"></param>
-        /// <param name="LineCuont"></param>
-        /// <param name="PaIList"></param>
         /// <returns></returns>
-        private bool GetShonin(int CompanyCode, int SeqNo, int LineCuont, ref List<PaymentApprovalInfo> PaIList)
+        private bool CreateLineData(ArrayList RowData, int iNo, int iGoukeiSeq, bool bNewData
+                                    , ref int ReadCnt, ref string strErrorMsg, ref int ApprovalMaxCount
+                                    , ref int icnt)
         {
-            PaymentApprovalInfo Pai = new PaymentApprovalInfo();
-            IOPaymentApprovalInfo IoPai = new IOPaymentApprovalInfo();
-            PaIList = new List<PaymentApprovalInfo>();
             try
             {
-                StringBuilder sSql = new StringBuilder();
-                sSql.AppendFormat(" where CompanyCode = {0}", CompanyCode);
-                sSql.AppendFormat(" and TargetDate = {0}", m_Select_TargetDate);
-                sSql.AppendFormat(" and SeqNo = {0}", SeqNo);
-                sSql.AppendFormat(" and LineCount = {0}", LineCuont);
-                sSql.Append(" order by ApprovalNo");
-                if (!IoPai.SelectAction(sSql.ToString(), ref PaIList)) return false;
+                object[] First = (object[])RowData[ReadCnt];
 
+                // ƒOƒŠƒbƒhƒf�[ƒ^ƒZƒbƒg
+                SetGridData(iNo, iGoukeiSeq, First, bNewData, ref icnt);
+
+                // �³”FŽÒƒŠƒXƒg
+                SetLineApprovalList(RowData, icnt, ref ReadCnt, ref ApprovalMaxCount);
+
                 return true;
-
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                strErrorMsg = ex.Message;
                 return false;
             }
-            finally
+        }
+        #endregion
+
+        #region ’S“–ŽÒ�E�³”FŽÒƒŠƒXƒgƒZƒbƒg
+        /// <summary>
+        /// ’S“–ŽÒ�E�³”FŽÒƒŠƒXƒgƒZƒbƒg
+        /// </summary>
+        /// <param name="LineData"></param>
+        private void SetLineApprovalList(ArrayList RowData, int LineCnt, ref int ReadCnt, ref int nMaxCount)
+        {
+            try
             {
-                IoPai.close();
-                IoPai = null;
+                DataGridView dgv = getShowingView();
+
+                // ’S“–ŽÒƒf�[ƒ^Žæ“¾
+                object[] objFirst = (object[])RowData[ReadCnt];
+                // ’S“–ŽÒ‚ÌƒZƒbƒg
+                DateTime FirstDate = CommonMotions.cnvDate(objFirst[(int)ClickGetData.ApprovalDate]);
+                dgv.Rows[LineCnt].Cells[(int)DispColumn.TantoShoninCode].Value = CommonMotions.cnvInt(objFirst[(int)ClickGetData.ApprovalPersonCode]);
+                dgv.Rows[LineCnt].Cells[(int)DispColumn.TantoShonin].Value = CommonMotions.cnvString(objFirst[(int)ClickGetData.TantoNM]);
+                dgv.Rows[LineCnt].Cells[(int)DispColumn.TantoDate].Value = FirstDate.ToShortDateString();
+                if (FirstDate.Date == DateTime.MinValue.Date)
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
+
+                // �³”FŽÒ�”ƒZƒbƒg
+                int AppCnt = 0;
+
+                int BreakKey1 = CommonMotions.cnvInt(objFirst[(int)ClickGetData.COMPANYCODE]);
+                int BreakKey2 = CommonMotions.cnvInt(objFirst[(int)ClickGetData.CONSTRUCTIONCODE]);
+                int BreakKey3 = CommonMotions.cnvInt(objFirst[(int)ClickGetData.ConstructionLedgerLineNo]);
+                int SaveKey1 = BreakKey1;
+                int SaveKey2 = BreakKey2;
+                int SaveKey3 = BreakKey3;
+
+                // �³”FƒŠƒXƒgƒZƒbƒg
+                int ColCnt = (int)DispColumn.Shonin1Code;
+                for (int ix = ReadCnt; ix < RowData.Count; ix++)
+                {
+                    object[] objRec = (object[])RowData[ix];
+                    DateTime AppDate = CommonMotions.cnvDate(objRec[(int)ClickGetData.PApp_ApprovalDate]);
+
+                    BreakKey1 = CommonMotions.cnvInt(objRec[(int)ClickGetData.COMPANYCODE]);
+                    BreakKey2 = CommonMotions.cnvInt(objRec[(int)ClickGetData.CONSTRUCTIONCODE]);
+                    BreakKey3 = CommonMotions.cnvInt(objRec[(int)ClickGetData.ConstructionLedgerLineNo]);
+
+                    // ‰ïŽÐƒR�[ƒh�E�HŽ–ƒR�[ƒh‚Ì‚Ç‚¿‚ç‚©‚ªˆá‚¦‚Î”²‚¯‚é
+                    if (BreakKey1 != SaveKey1 || BreakKey2 != SaveKey2 || BreakKey3 != SaveKey3) break;
+                    ReadCnt = ix;
+
+                    dgv.Rows[LineCnt].Cells[ColCnt++].Value = CommonMotions.cnvInt(objRec[(int)ClickGetData.AppM_ApprovalPerson]);
+
+                    if (AppDate.Date == DateTime.MinValue.Date) dgv.Rows[LineCnt].Cells[ColCnt].Style.ForeColor = Color.Gray;
+                    dgv.Rows[LineCnt].Cells[ColCnt++].Value = CommonMotions.cnvString(objRec[(int)ClickGetData.AppPName_PersonName]);
+
+                    dgv.Rows[LineCnt].Cells[ColCnt++].Value = AppDate;
+                    dgv.Rows[LineCnt].Cells[ColCnt++].Value = CommonMotions.cnvInt(objRec[(int)ClickGetData.AppM_ApprovalAuthority]);
+                    dgv.Rows[LineCnt].Cells[ColCnt++].Value = CommonMotions.cnvInt(objRec[(int)ClickGetData.AppM_DisplayOrder]);
+
+                    AppCnt++;
+
+                    SaveKey1 = BreakKey1;
+                    SaveKey2 = BreakKey2;
+                    SaveKey3 = BreakKey3;
+                }
+                if (nMaxCount < AppCnt) nMaxCount = AppCnt;
             }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
+        #region Œ ŒÀ‚É‚æ‚é�s‚Ì•\Ž¦�§Œä
+        /// <summary>
+        /// Œ ŒÀ‚É‚æ‚é�s‚Ì•\Ž¦�§Œä
+        /// </summary>
+        /// <param name="LineCount"></param>
+        private void RowVisibleControlAll(int LineCount, object[] work)
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                int DepCode = CommonMotions.cnvInt(dgv.Rows[LineCount].Cells[(int)DispColumn.DetailName].Value);
+
+                int SaleCode = CommonMotions.cnvInt(work[(int)ClickGetData.SalesPersonCode]);
+                int ConstrPersonCode = CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionPersonCode]);
+                int SubPersonCode = CommonMotions.cnvInt(work[(int)ClickGetData.ConstrSubPersonCode]);
+                int InstrCode = CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionInstructor]);
+
+                // •s–¾ˆÈŠO‚Íˆê’U•s‰ÂŽ‹‚É‚·‚é
+                dgv.Rows[LineCount].Visible = false;
+                dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.UnVisible;
+
+                // ‘�–±’S“–
+                if (m_UserInfo.m_GeneralAffairsFlg == (int)SecurityMaster.GeneAffDef.GeneralDep)
+                {
+                    // •ÛŒì‹æ•ª”ÍˆÍ‚ÉŠÖŒW‚È‚­‘S•”��‚ÌŽQ�Æ‚ð‰Â”\‚Æ‚µ�A•Ò�W‰Â”\�€–Ú‚Í‘�–±•”–å“ü—Í—“‚Ì‚Ý‚Æ‚·‚é�B
+                    dgv.Rows[LineCount].Visible = true;
+                    dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                }
+                // “Á•ÊŒ ŒÀ‚Ì�ê�‡
+                else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.SpecialAuthority)
+                {
+                    // •ÛŒì‹æ•ª”ÍˆÍ‚ÉŠÖŒW‚È‚­‘S•”��‚ÌŽQ�Æ‚ð‰Â”\‚Æ‚µ�A‘�–±•”–å“ü—Í—“ˆÈŠO‚Í•Ò�W‰Â”\‚Æ‚·‚é�B
+                    dgv.Rows[LineCount].Visible = true;
+                    dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                }
+                // �Š‘®’·�A“�Š‡ŽÒ‚Ì�ê�‡
+                else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.LimitedAuthority || m_UserInfo.m_Type == CommonDefine.SecurityRankPos.FreeAuthority)
+                {
+                    // ŽQ�Æ•”��‚É‚ ‚é‚©‚Ìƒ`ƒFƒbƒN
+                    foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserDepartment)
+                    {
+                        // Ž©•ª‚ªŒ ŒÀ‚ð•ÛŽ�‚·‚é•”��‚Ì�HŽ–‚Ì‚Ý•\Ž¦‚·‚é
+                        if (RefDepRec.DepartmentCode != DepCode)
+                        {
+                            dgv.Rows[LineCount].Visible = true;
+                            dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                        }
+                    }
+                }
+                // ’S“–ŽÒ‚Ì�ê�‡
+                else if (m_UserInfo.m_Type == CommonDefine.SecurityRankPos.NormalAuthority)
+                {
+                    if (m_UserInfo.m_SecRange == ClsSecurityPermission.SecRangeType.InCharge)
+                    {
+                        // ‰c‹Æ’S“–
+                        if (CommonMotions.LoginUserData.PersonCode == SaleCode)
+                        {
+                            dgv.Rows[LineCount].Visible = true;
+                            dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                        }
+                        // �HŽ–’S“–
+                        if (CommonMotions.LoginUserData.PersonCode == ConstrPersonCode
+                            || CommonMotions.LoginUserData.PersonCode == SubPersonCode
+                            || CommonMotions.LoginUserData.PersonCode == InstrCode)
+                        {
+                            dgv.Rows[LineCount].Visible = true;
+                            dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                        }
+                    }
+                    else if (m_UserInfo.m_SecRange == ClsSecurityPermission.SecRangeType.OneDepartment)
+                    {
+                        // ŽQ�Æ•”��‚É‚ ‚é‚©‚Ìƒ`ƒFƒbƒN
+                        foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserDepartment)
+                        {
+                            // Ž©•ª‚ªŒ ŒÀ‚ð•ÛŽ�‚·‚é•”��‚Ì�HŽ–‚Ì‚Ý•\Ž¦‚·‚é
+                            if (RefDepRec.DepartmentCode != DepCode)
+                            {
+                                dgv.Rows[LineCount].Visible = true;
+                                dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+                            }
+                        }
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region •”���E’S“–ŽÒ‘I‘ð‚É‚æ‚é�s‚Ì•\Ž¦�§Œä
+        /// <summary>
+        /// •”���E’S“–ŽÒ‘I‘ð‚É‚æ‚é�s‚Ì•\Ž¦�§Œä
+        /// </summary>
+        /// <param name="LineCount"></param>
+        private void RowVisibleControlSelect(int LineCount)
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                int RowDepCode = CommonMotions.cnvInt(dgv.Rows[LineCount].Cells[(int)DispColumn.DepartmentCode].Value);
+                int RowPersonCode = CommonMotions.cnvInt(dgv.Rows[LineCount].Cells[(int)DispColumn.ConstructionPerson].Value);
+                int SelDepCode = GetDepartmentCode();
+                int SelPersonCode = GetConstrPersonCode();
+
+                // •s–¾ˆÈŠO‚Íˆê’U•s‰ÂŽ‹‚É‚·‚é
+                dgv.Rows[LineCount].Visible = false;
+                dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.UnVisible;
+
+                if (RowDepCode != SelDepCode) return;
+                if (SelPersonCode != 0 && RowPersonCode != SelPersonCode) return;
+
+                dgv.Rows[LineCount].Visible = true;
+                dgv.Rows[LineCount].Cells[(int)DispColumn.RowVisible].Value = (int)RowVisibleDef.Visible;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region ƒOƒŠƒbƒhƒf�[ƒ^ƒZƒbƒg
         /// <summary>
         /// ƒOƒŠƒbƒhƒf�[ƒ^ƒZƒbƒg
@@ -3213,17 +3814,23 @@
         /// <param name="iNo"></param>
         /// <param name="iGoukeiSeq"></param>
         /// <param name="work"></param>
-        private void SetGridData(int icnt, int iNo, int iGoukeiSeq, object[] work)
+        private void SetGridData(int iNo, int iGoukeiSeq, object[] work, bool bNewData, ref int icnt)
         {
             try
             {
                 DataGridView dgv = getShowingView();
 
+                icnt = dgv.Rows.Add();
+
                 dgv.Rows[icnt].Cells[(int)DispColumn.CompanyDispOrder].Value = CommonMotions.cnvInt(work[(int)ClickGetData.DisplayOrder]);
                 dgv.Rows[icnt].Cells[(int)DispColumn.ApprovalEndFlg].Value = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalEndFlg]);
                 dgv.Rows[icnt].Cells[(int)DispColumn.UpdateDate].Value = CommonMotions.cnvString(work[(int)ClickGetData.UpdateDate]);
 
-                dgv.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Unchanged;
+                if (bNewData)
+                    dgv.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Added;
+                else
+                    dgv.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Unchanged;
+
                 dgv.Rows[icnt].Cells[(int)DispColumn.RowType].Value = 0;
                 dgv.Rows[icnt].Cells[(int)DispColumn.GoukeiSeqNo].Value = iGoukeiSeq;
                 dgv.Rows[icnt].Cells[(int)DispColumn.GroupSeqNo].Value = CommonMotions.cnvInt(work[(int)ClickGetData.SEQNO]);
@@ -3263,6 +3870,20 @@
                 dgv.Rows[icnt].Cells[(int)DispColumn.CyuumonshoTeisyutu].Value = CommonMotions.cnvString(work[(int)ClickGetData.PurchaseOrderMailingDate]);
                 dgv.Rows[icnt].Cells[(int)DispColumn.CyuumonshoTouchaku].Value = CommonMotions.cnvString(work[(int)ClickGetData.PurchaseOrderReturnDate]);
                 dgv.Rows[icnt].Cells[(int)DispColumn.YosanSho].Value = CommonMotions.cnvString(work[(int)ClickGetData.PaData]);
+
+                dgv.Rows[icnt].Cells[(int)DispColumn.DepartmentCode].Value = CommonMotions.cnvInt(work[(int)ClickGetData.DepartmentCode]);
+
+                // ”õ�l�Ý’è
+                dgv.Rows[icnt].Cells[(int)DispColumn.Bikou].Value = CommonMotions.cnvString(work[(int)ClickGetData.Bikou]);
+                // �HŽ–�Ú�×‘ä’ ‚Ì�s”Ô�†�A—ñ”Ô�†‚ð�Ý’è
+                dgv.Rows[icnt].Cells[(int)DispColumn.ConstructionLedgerLineNo].Value = CommonMotions.cnvString(work[(int)ClickGetData.ConstructionLedgerLineNo]);
+                dgv.Rows[icnt].Cells[(int)DispColumn.ConstructionLedgerColNo].Value = CommonMotions.cnvString(work[(int)ClickGetData.ConstructionLedgerColNo]);
+
+                // –¾�×–¼�ÌƒZƒbƒg
+                dgv.Rows[icnt].Cells[(int)DispColumn.DetailName].Value = CommonMotions.cnvString(work[(int)ClickGetData.DetailName]);
+
+                // �HŽ–’S“–ŽÒ–¼ƒZƒbƒg
+                dgv.Rows[icnt].Cells[(int)DispColumn.ConstructionPerson].Value = CommonMotions.cnvString(work[(int)ClickGetData.ConstructionPersonCode]);
             }
             catch (Exception ex)
             {
@@ -3271,9 +3892,88 @@
         }
         #endregion
 
+        #region ‚r‚p‚kƒOƒ‹�[ƒvƒZƒbƒg
+        /// <summary>
+        /// ‚r‚p‚kƒOƒ‹�[ƒvƒZƒbƒg
+        /// </summary>
+        private void SetSQLGroup(ref StringBuilder sql, string Arias = "")
+        {
+            try
+            {
+                sql.Append(" group by ");
+                sql.AppendFormat("  {0}SeqNo", Arias);
+                sql.AppendFormat(", {0}LineCount", Arias);
+                sql.AppendFormat(", {0}CompanyCode", Arias);
+                sql.AppendFormat(", {0}CompanyName", Arias);
+                sql.AppendFormat(", {0}DisplayOrder", Arias);
+                sql.AppendFormat(", {0}ConstructionCode", Arias);
+                sql.AppendFormat(", {0}FieldName", Arias);
+                sql.AppendFormat(", {0}BillPrice", Arias);
+                sql.AppendFormat(", {0}HighwPrice", Arias);
+                sql.AppendFormat(", {0}Hardwprice", Arias);
+                sql.AppendFormat(", {0}IndswasteTax", Arias);
+                sql.AppendFormat(", {0}UpdateDate", Arias);
+                sql.AppendFormat(", {0}Bikou", Arias);
+                sql.AppendFormat(", {0}KojiSeikyu", Arias);
+                sql.AppendFormat(", {0}KojiNebiki", Arias);
+                sql.AppendFormat(", {0}KojiSousai", Arias);
+                sql.AppendFormat(", {0}JikaiKurikosi", Arias);
+                sql.AppendFormat(", {0}KojiKousoku", Arias);
+                sql.AppendFormat(", {0}KojiKanamono", Arias);
+                sql.AppendFormat(", {0}KojiSannhaiZei", Arias);
+                sql.AppendFormat(", {0}CnstrPrice", Arias);
+                sql.AppendFormat(", {0}CnstrpriceExist", Arias);
+                sql.AppendFormat(", {0}ApprovalPersonCode", Arias);
+                sql.AppendFormat(", {0}TantoNM", Arias);
+                sql.AppendFormat(", {0}ApprovalDate", Arias);
+                sql.AppendFormat(", {0}ApprovalEndFlg", Arias);
+                sql.AppendFormat(", {0}SalesPersonCode", Arias);
+                sql.AppendFormat(", {0}ConstructionPersonCode", Arias);
+                sql.AppendFormat(", {0}ConstrSubPersonCode", Arias);
+                sql.AppendFormat(", {0}ConstructionInstructor", Arias);
+                sql.AppendFormat(", {0}DepartmentCode", Arias);
+                sql.AppendFormat(", {0}PurchaseOrderMailingDate", Arias);
+                sql.AppendFormat(", {0}PurchaseOrderReturnDate", Arias);
+                sql.AppendFormat(", {0}PaData", Arias);
+                sql.AppendFormat(", {0}LinePoint", Arias);
+                sql.AppendFormat(", {0}ColPoint", Arias);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ‚r‚p‚kƒI�[ƒ_�[ƒZƒbƒg
+        /// <summary>
+        /// ‚r‚p‚kƒI�[ƒ_�[ƒZƒbƒg
+        /// </summary>
+        private void SetSQLOrder(ref StringBuilder sql)
+        {
+            try
+            {
+                if (rdbCompany.Checked)
+                {
+                    // ‹ÆŽÒ’PˆÊ•\Ž¦
+                    sql.AppendLine(" order by CompanyCode ASC, SeqNo ASC, LineCount ASC, ConstructionCode ASC, LinePoint ASC, M10 DESC");
+                }
+                else if (rdbProject.Checked)
+                {
+                    // Œ»�ê’PˆÊ•\Ž¦
+                    sql.AppendLine(" order by ConstructionPersonCode ASC, ConstructionCode DESC, DisplayOrder ASC, SEQNO ASC, LineCount ASC, LinePoint ASC, M10 DESC ");
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region ’S“–ŽÒ�³”F‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬
         /// <summary>
-        /// ƒf�[ƒ^Žæ“¾SQL�ì�¬�iŽx•¥�³”F‚È‚µ�j
+        /// ’S“–ŽÒ�³”F‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬
         /// </summary>
         /// <param name="PaInfo"></param>
         /// <param name="sql"></param>
@@ -3311,8 +4011,7 @@
                 sql.Append("  , ifnull(Picm.SealPrintName, '') as TantoNM ");
                 sql.Append("  , DATE_FORMAT( ");
                 sql.AppendFormat("    ifnull(Pdd.ApprovalDate, '{0}') ", DateTime.MinValue.ToShortDateString());
-                sql.Append("    , '%Y/%m/%d' ");
-                sql.Append("  ) as ApprovalDate ");
+                sql.Append("    , '%Y/%m/%d') as ApprovalDate ");
                 sql.Append("  , ifnull(Pdd.ApprovalEndFlg, 0) as ApprovalEndFlg ");
                 sql.Append("  , ifnull(Cbi.SalesPersonCode, 0) as SalesPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstructionPersonCode, 0) as ConstructionPersonCode ");
@@ -3319,113 +4018,65 @@
                 sql.Append("  , ifnull(Cbi.ConstrSubPersonCode, 0) as ConstrSubPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstructionInstructor, 0) as ConstructionInstructor ");
                 sql.Append("  , Picm2.DepartmentCode ");
-                sql.Append("  , case ifnull(Pod.SendDate, '') ");
+                sql.Append("  , case ifnull(DATE(Pod.SendDate), '') ");
                 sql.Append("    when '' then '�~' ");
                 sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderMailingDate ");
-                sql.Append("  , case ifnull(Pod.ReturnCheckDate, '') ");
+                sql.Append("  , case ifnull(DATE(Pod.ReturnCheckDate), '') ");
                 sql.Append("    when '' then '�~' ");
-                sql.AppendFormat("    when '{0]' then '�~' ", DateTime.MinValue.ToShortDateString());
+                sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderReturnDate ");
                 sql.Append("  , case ifnull(Pa.PersonCode, 0) ");
-                sql.Append("    when 0 then case Bdd.ConstructionCode ");
+                sql.Append("    when 0 then case Cld.ConstructionCode ");
                 sql.Append("      when 0 then '' ");
                 sql.Append("      else '�~' ");
                 sql.Append("      end ");
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PaData ");
-                //sql.Append("  , null as LinePoint ");
-                //sql.Append("  , null as ColPoint ");
                 sql.Append("  , Bdd.CONSTRUCTIONROWCNT as LinePoint ");
                 sql.Append("  , Bdd.CONSTRUCTIONCOLCNT as ColPoint  ");
-                sql.Append("from ");
-                sql.Append("  BillingData as Bd join ( ");
-                sql.Append("    BillingDataDetail as Bdd");
-                sql.Append("    left join SubContractorMaster as Scm ");
-                sql.Append("      on Bdd.CompanyCode = Scm.CompanyCode ");
-                sql.AppendFormat("      and Scm.LabourKind = {0} ", m_Labourkind);
-                sql.Append("      join ( ");
-                sql.Append("        PaymentDataDetail as Pdd ");
-                sql.Append("          left join PersonInChargeMaster as Picm ");
-                sql.Append("            on ifnull(Pdd.ApprovalPersonCode, - 1) = Picm.PersonCode ");
-                sql.Append("      ) ");
-                sql.Append("        on Bdd.CompanyCode = Pdd.CompanyCode ");
-                sql.Append("        and Bdd.TargetDate = Pdd.TargetDate ");
-                sql.Append("        and Bdd.SeqNo = Pdd.SeqNo ");
-                sql.Append("        and Bdd.LineCount = Pdd.LineCount ");
-                sql.AppendFormat("        and Pdd.ApprovalPersonCode = {0} ", PaInfo.ApprovalPerson);
-                sql.AppendFormat("        and DATE_FORMAT(Pdd.ApprovalDate, '%Y%m') = {0} ", PaInfo.ApprovalDate.ToString("yyyyMM"));
-                sql.Append("      left join ( ");
-                sql.Append("        ConstructionBaseInfo as Cbi ");
-                sql.Append("          left join ( ");
-                sql.Append("            PersonInChargeMaster as Picm2 ");
-                sql.Append("              left join ApprovalMaster as Am ");
-                sql.Append("                on Picm2.DepartmentCode = Am.DepartmentCode ");
-                sql.Append("                and Am.ApprovalCode = 3 ");
-                sql.Append("                and ApprovalAuthority = 1 ");
-                sql.Append("          ) ");
-                sql.Append("            on Cbi.ConstructionPersonCode = Picm2.PersonCode ");
-                sql.Append("        left join ConstructionBaseinfoDetail as Cbd");
+                sql.Append(" From BillingData as Bd");
+                sql.Append("    join ( BillingDataDetail as Bdd");
+                sql.Append("       left join SubContractorMaster as Scm ");
+                sql.Append("           on Bdd.CompanyCode = Scm.CompanyCode ");
+                sql.AppendFormat("     and Scm.LabourKind = {0} ", m_Labourkind);
+                sql.Append("       join (PaymentDataDetail as Pdd ");
+                sql.Append("             left join PersonInChargeMaster as Picm ");
+                sql.Append("               on ifnull(Pdd.ApprovalPersonCode, -1) = Picm.PersonCode) ");
+                sql.Append("       on Bdd.CompanyCode = Pdd.CompanyCode ");
+                sql.Append("       and Bdd.TargetDate = Pdd.TargetDate ");
+                sql.Append("       and Bdd.SeqNo = Pdd.SeqNo ");
+                sql.Append("       and Bdd.LineCount = Pdd.LineCount ");
+                sql.AppendFormat(" and Pdd.ApprovalPersonCode = {0} ", PaInfo.ApprovalPerson);
+                sql.AppendFormat(" and DATE_FORMAT(Pdd.ApprovalDate, '%Y%m') = {0} ", PaInfo.ApprovalDate.ToString("yyyyMM"));
+                sql.Append("       left join (ConstructionBaseInfo as Cbi ");
+                sql.Append("           left join (PersonInChargeMaster as Picm2 ");
+                sql.Append("               left join ApprovalMaster as Am ");
+                sql.Append("                  on Picm2.DepartmentCode = Am.DepartmentCode ");
+                sql.AppendFormat("            and Am.ApprovalCode = {0}) ", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                sql.Append("           on Cbi.ConstructionPersonCode = Picm2.PersonCode ");
+                sql.Append("           left join ConstructionBaseinfoDetail as Cbd");
                 sql.Append("                   on Cbd.ConstructionCode = Cbi.ConstructionCode ");
                 sql.AppendFormat("             and Cbd.DetailNo = {0} ", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
-                sql.Append("          left join ProcessApproval as Pa ");
-                sql.Append("            on Cbi.ConstructionCode = Pa.ConstructionCode ");
-                sql.Append("            and Am.ApprovalPerson = Pa.PersonCode ");
-                sql.Append("            and Pa.SeqNo > 1 ");
-                sql.Append("            and Pa.ApprovalStatus = 2 ");
-                sql.Append("      ) ");
-                sql.Append("        on Bdd.ConstructionCode = Cbi.ConstructionCode ");
-                sql.Append("  ) ");
-                sql.Append("       on Bd.CompanyCode = Bdd.CompanyCode ");
-                sql.Append("       and Bd.TargetDate = Bdd.TargetDate ");
-                sql.Append("       and Bd.SeqNo = Bdd.SeqNo ");
-                sql.Append("       and Bd.TargetDate = Pdd.TargetDate ");
-                sql.Append("  left join ( ");
-                sql.Append("    PurchaseOrderDate as Pod ");
-                sql.Append("  ) on Bd.CompanyCode = Pod.CompanyCode ");
-                sql.Append("  and Bdd.ConstructionCode = Pod.ConstructionCode ");
+                sql.Append("           left join ProcessApproval as Pa ");
+                sql.Append("               on Cbi.ConstructionCode = Pa.ConstructionCode ");
+                sql.AppendFormat("         and Pa.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                sql.Append("               and Pa.PersonCode = Picm2.PersonCode");
+                sql.Append("               and Pa.SeqNo = 1 ");
+                sql.AppendFormat("         and Pa.ApprovalStatus = {0}) ", (int)CommonDefine.ApprovalStatus.Approval);
+                sql.Append("       on Bdd.ConstructionCode = Cbi.ConstructionCode) ");
+                sql.Append("    on Bd.CompanyCode = Bdd.CompanyCode ");
+                sql.Append("    and Bd.TargetDate = Bdd.TargetDate ");
+                sql.Append("    and Bd.SeqNo = Bdd.SeqNo ");
+                sql.Append("    and Bd.TargetDate = Pdd.TargetDate ");
+                sql.Append("    left join (PurchaseOrderDate as Pod)");
+                sql.Append("         on Bd.CompanyCode = Pod.CompanyCode ");
+                sql.Append("         and Bdd.ConstructionCode = Pod.ConstructionCode ");
 
-                sql.Append(" ");
-
-                sql.Append("group by ");
-                sql.Append("  SeqNo ");
-                sql.Append("  , LineCount ");
-                sql.Append("  , CompanyCode ");
-                sql.Append("  , CompanyName ");
-                sql.Append("  , DisplayOrder ");
-                sql.Append("  , ConstructionCode ");
-                sql.Append("  , FieldName ");
-                sql.Append("  , BillPrice ");
-                sql.Append("  , HighwPrice ");
-                sql.Append("  , Hardwprice ");
-                sql.Append("  , IndswasteTax ");
-                sql.Append("  , UpdateDate ");
-                sql.Append("  , Bikou ");
-                sql.Append("  , KojiSeikyu ");
-                sql.Append("  , KojiNebiki ");
-                sql.Append("  , KojiSousai ");
-                sql.Append("  , JikaiKurikosi ");
-                sql.Append("  , KojiKousoku ");
-                sql.Append("  , KojiKanamono ");
-                sql.Append("  , KojiSannhaiZei ");
-                sql.Append("  , CnstrPrice ");
-                sql.Append("  , CnstrpriceExist ");
-                sql.Append("  , ApprovalPersonCode ");
-                sql.Append("  , TantoNM ");
-                sql.Append("  , ApprovalDate ");
-                sql.Append("  , ApprovalEndFlg ");
-                sql.Append("  , SalesPersonCode ");
-                sql.Append("  , ConstructionPersonCode ");
-                sql.Append("  , ConstrSubPersonCode ");
-                sql.Append("  , ConstructionInstructor ");
-                sql.Append("  , DepartmentCode ");
-                sql.Append("  , PurchaseOrderMailingDate ");
-                sql.Append("  , PurchaseOrderReturnDate ");
-                sql.Append("  , PaData ");
-                sql.Append("  , LinePoint ");
-                sql.Append("  , ColPoint ");
+                // Group Set
+                SetSQLGroup(ref sql);
             }
             catch (Exception ex)
             {
@@ -3434,138 +4085,152 @@
         }
         #endregion
 
-        #region ƒ�ƒjƒ…�[‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬
+        #region ƒ�ƒjƒ…�[‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬(�V‹K)
         /// <summary>
-        /// ƒf�[ƒ^Žæ“¾SQL�ì�¬�iŽx•¥�³”F‚ ‚è�j
+        /// ƒ�ƒjƒ…�[‰æ–Ê‚©‚ç‚Ì‘JˆÚŽžSQL�ì�¬(�V‹K)
         /// </summary>
         /// <param name="PaInfo"></param>
         /// <param name="sql"></param>
-        private void CreateSQLType2(PaymentApprovalInfo PaInfo, ref StringBuilder sql)
+        private void CreateSQLType2Newly(PaymentApprovalInfo PaInfo, ref StringBuilder sql)
         {
             try
             {
-                sql.Append("select * from ( ");
-                sql.Append("select ");
-                sql.Append("  ifnull(Bd.SeqNo, 1) as SeqNo ");
-                sql.Append("  , ifnull(Bdd.LineCount, 0) as LineCount ");
-                sql.Append("  , ifnull(Bdd.CompanyCode, Cld.CompanyCode) as CompanyCode ");
-                sql.Append("  , ifnull(Scm.CompanyName, Cld.CompanyName) as CompanyName ");
+                int DefaultCol = Enum.GetNames(typeof(FrmConstructionLedger.GridColumn)).Length - 1;
+                int Appcode = 0;
+                if (m_Labourkind == (int)CommonDefine.LabourKinds.Labor)
+                    Appcode = (int)ClsExcute.ApprovalListNo.FeePayment;
+                else
+                    Appcode = (int)ClsExcute.ApprovalListNo.SubConstrPayment;
+
+                sql.Append("Select ");
+                sql.Append("  1 as SeqNo ");
+                sql.Append("  , 0 as LineCount ");
+                sql.Append("  , Cld.CompanyCode as CompanyCode ");
+                sql.Append("  , Cld.CompanyName as CompanyName ");
                 sql.Append("  , Sc.DisplayOrder as DisplayOrder ");
-                sql.Append("  , ifnull(Bdd.ConstructionCode, Cl.ConstructionCode) as ConstructionCode ");
-                sql.Append("  , ifnull(Bdd.FieldName, Cbd.DetailString) as FieldName ");
-                sql.Append("  , Bdd.BillPrice as BillPrice ");
-                sql.Append("  , Bdd.HighwPrice as HighwPrice ");
-                sql.Append("  , Bdd.HardwPrice as HardwPrice ");
-                sql.Append("  , Bdd.IndswasteTax as IndswasteTax ");
-                sql.Append("  , DATE_FORMAT(Bdd.UpdateDate, '%Y/%m/%d %H:%i:%s') as UpdateDate ");
-                sql.Append("  , ifnull(Bdd.Note, '') as Bikou ");
-                sql.Append("  , ifnull(Pdd.BillPrice, 0) as KojiSeikyu ");
-                sql.Append("  , ifnull(Pdd.DiscountPrice, 0) as KojiNebiki ");
-                sql.Append("  , ifnull(Pdd.OffsetPrice, 0) as KojiSousai ");
-                sql.Append("  , ifnull(Pdd.NextCoPrice, 0) as JikaiKurikosi ");
-                sql.Append("  , ifnull(Pdd.HighwPrice, 0) as KojiKousoku ");
-                sql.Append("  , ifnull(Pdd.HardwPrice, 0) as KojiKanamono ");
-                sql.Append("  , ifnull(Pdd.IndswasteTax, 0) as KojiSannhaiZei ");
-                sql.Append("  , ifnull(Pdd.CnstrPrice, 0) as CnstrPrice ");
-                sql.Append("  , ifnull(Pdd.CnstrPriceExist, - 1) as CnstrPriceExist ");
-                sql.Append("  , ifnull(Pdd.ApprovalPersonCode, 0) as ApprovalPersonCode ");
+                sql.Append("  , Cl.ConstructionCode as ConstructionCode ");
+                sql.Append("  , Cbd.DetailString as FieldName ");
+                sql.Append("  , 0 as BillPrice ");
+                sql.Append("  , 0 as HighwPrice ");
+                sql.Append("  , 0 as HardwPrice ");
+                sql.Append("  , 0 as IndswasteTax ");
+                sql.Append("  , null as UpdateDate ");
+                sql.Append("  , '' as Bikou ");
+                sql.Append("  , 0 as KojiSeikyu ");
+                sql.Append("  , 0 as KojiNebiki ");
+                sql.Append("  , 0 as KojiSousai ");
+                sql.Append("  , 0 as JikaiKurikosi ");
+                sql.Append("  , 0 as KojiKousoku ");
+                sql.Append("  , 0 as KojiKanamono ");
+                sql.Append("  , 0 as KojiSannhaiZei ");
+                sql.Append("  , 0 as CnstrPrice ");
+                sql.Append("  , -1 as CnstrPriceExist ");
+                sql.Append("  , Cbi.ConstructionPersonCode as ApprovalPersonCode ");
                 sql.Append("  , ifnull(Picm.SealPrintName, '') as TantoNM ");
-                sql.Append("  , DATE_FORMAT( ");
-                sql.AppendFormat("    ifnull(Pdd.ApprovalDate, '{0}') ", DateTime.MinValue.ToShortDateString());
-                sql.Append("    , '%Y/%m/%d' ");
-                sql.Append("  ) as ApprovalDate ");
-                sql.Append("  , ifnull(Pdd.ApprovalEndFlg, 0) as ApprovalEndFlg ");
+                sql.AppendFormat("  , DATE('{0}') as ApprovalDate ", DateTime.MinValue.ToShortDateString());
+                sql.Append("  , 0 as ApprovalEndFlg ");
                 sql.Append("  , ifnull(Cbi.SalesPersonCode, 0) as SalesPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstructionPersonCode, 0) as ConstructionPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstrSubPersonCode, 0) as ConstrSubPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstructionInstructor, 0) as ConstructionInstructor ");
-                sql.Append("  , Picm2.DepartmentCode ");
-                sql.Append("  , case ifnull(Pod.SendDate, '') ");
+                sql.Append("  , Picm.DepartmentCode ");
+                
+                sql.Append("  , case ifnull(DATE(Pod.SendDate), '') ");
                 sql.Append("    when '' then '�~' ");
                 sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderMailingDate ");
-                sql.Append("  , case ifnull(Pod.ReturnCheckDate, '') ");
+
+                sql.Append("  , case ifnull(DATE(Pod.ReturnCheckDate), '') ");
                 sql.Append("    when '' then '�~' ");
                 sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderReturnDate ");
-                sql.Append("  , case ifnull(Pa.PersonCode, 0) ");
-                sql.Append("    when 0 then case Cld.ConstructionCode ");
-                sql.Append("      when 0 then '' ");
-                sql.Append("      else '�~' ");
-                sql.Append("      end ");
-                sql.Append("    else '�›' ");
-                sql.Append("    end as PaData ");
+                
+                sql.Append("  , '�›' as PaData ");
                 sql.Append("  , Cld.LineCount as LinePoint ");
-                sql.AppendFormat("  , PERIOD_DIFF({0} ,DATE_FORMAT(Cl.ConstructionStart, '%Y%m')) + {1} AS ColPoint "
-                                    , m_Select_TargetDate, Enum.GetNames(typeof(FrmConstructionLedger.GridColumn)).Length - 1);
+                sql.AppendFormat("  , PERIOD_DIFF({0}", m_Select_TargetDate);
+                sql.AppendFormat("  , DATE_FORMAT(Cl.ConstructionStart, '%Y%m')) + {0} AS ColPoint ", DefaultCol);
                 sql.Append("  , Cld.SecondString as DetailName ");
-                sql.Append(" from ");
-                sql.Append("  ConstructionLedgerDetail as Cld ");
-                sql.Append("  inner join ConstructionLedger as Cl on Cl.ConstructionCode = Cld.ConstructionCode ");
+
+                sql.Append("  , 0 As M1 ");
+                sql.Append("  , 0 As M2 ");
+                sql.Append("  , 0 As M3 ");
+                sql.Append("  , 0 As M4 ");
+                sql.Append("  , 0 As M5 ");
+                sql.AppendFormat(", STR_TO_DATE('{0}', '%Y/%m/%d') As M6 ", DateTime.MinValue.ToShortDateString());
+                sql.Append("  , AppM.ApprovalCode As M7 ");
+                sql.Append("  , AppM.DepartmentCode As M8 ");
+                sql.Append("  , AppM.SeqNo As M9 ");
+                sql.Append("  , AppM.DisplayOrder As M10 ");
+                sql.Append("  , AppM.ApprovalPerson As M11 ");
+                sql.Append("  , AppPName.PersonName As M12 ");
+                sql.Append("  , AppM.ApprovalAuthority As M13 ");
+
+                sql.Append(" From ConstructionLedgerDetail as Cld ");
+
+                sql.Append("      inner join ConstructionLedger as Cl ");
+                sql.Append("          on Cl.ConstructionCode = Cld.ConstructionCode ");
                 sql.AppendFormat("    and Cl.ComplateFlg = {0} ", (int)ConstructionLedger.CompFlagDef.Operateing);
-                sql.Append("  inner join ConstructionBaseinfoDetail as Cbd on Cbd.ConstructionCode = Cld.ConstructionCode ");
-                sql.AppendFormat("    and Cbd.DetailNo = {0} ", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
-                sql.Append("  inner join SubContractorMaster as Sc on Sc.COMPANYCODE = Cld.CompanyCode ");
-                sql.AppendFormat("  and Sc.LABOURKIND = {0} ", m_Labourkind);
-                sql.Append("  left join ConstructionLedgerExcute AS Cle on Cle.ConstructionCode = Cld.ConstructionCode ");
-                sql.Append("  and Cle.GroupCount = Cld.GroupCount ");
-                sql.Append("  and Cle.LineCount = Cld.LineCount ");
-                sql.AppendFormat("    and Cle.ColumnCount = (PERIOD_DIFF({0} ,DATE_FORMAT(CL.ConstructionStart, '%Y%m')) + {1}) "
-                                        , m_Select_TargetDate, Enum.GetNames(typeof(FrmConstructionLedger.GridColumn)).Length - 1);
-                sql.Append("  left join ( ");
-                sql.Append("  BillingData as Bd join ( ");
-                sql.Append("    BillingDataDetail as Bdd join SubContractorMaster as Scm ");
-                sql.Append("      on Bdd.CompanyCode = Scm.CompanyCode ");
-                sql.AppendFormat("      and Scm.LabourKind = {0} ", m_Labourkind);
-                sql.Append("      left join ( ");
-                sql.Append("        PaymentDataDetail as Pdd ");
-                sql.Append("          left join PersonInChargeMaster as Picm ");
-                sql.Append("            on ifnull(Pdd.ApprovalPersonCode, - 1) = Picm.PersonCode ");
-                sql.Append("      ) ");
-                sql.Append("        on Bdd.CompanyCode = Pdd.CompanyCode ");
-                sql.Append("        and Bdd.TargetDate = Pdd.TargetDate ");
-                sql.Append("        and Bdd.SeqNo = Pdd.SeqNo ");
-                sql.Append("        and Bdd.LineCount = Pdd.LineCount ");
-                sql.Append("  ) ");
-                sql.Append("       on Bd.CompanyCode = BdD.CompanyCode ");
-                sql.Append("       and Bd.TargetDate = BdD.TargetDate ");
-                sql.Append("       and Bd.SeqNo = BdD.SeqNo ");
-                sql.AppendFormat("       and Bd.TargetDate = {0} ", m_Select_TargetDate);
-                sql.Append("  ) on Bd.COMPANYCODE = Cld.CompanyCode ");
-                sql.Append("  and Bdd.ConstructionCode = Cld.ConstructionCode ");
-                sql.Append("  left join ( ");
-                sql.Append("    PurchaseOrderDate as Pod ");
-                sql.Append("  ) on Cld.CompanyCode = Pod.CompanyCode ");
-                sql.Append("  and Cld.ConstructionCode = Pod.ConstructionCode ");
-                sql.Append("  left join ( ");
-                sql.Append("    ConstructionBaseInfo as Cbi ");
-                sql.Append("      left join ( ");
-                sql.Append("        PersonInChargeMaster as Picm2 ");
-                sql.Append("          left join ApprovalMaster as Am ");
-                sql.Append("            on Picm2.DepartmentCode = Am.DepartmentCode ");
-                sql.Append("            and Am.ApprovalCode = 3 ");
-                sql.Append("            and ApprovalAuthority = 1 ");
-                sql.Append("      ) ");
-                sql.Append("        on Cbi.ConstructionPersonCode = Picm2.PersonCode ");
-                sql.Append("      left join ProcessApproval as Pa ");
-                sql.Append("        on Cbi.ConstructionCode = Pa.ConstructionCode ");
-                sql.Append("        and Am.ApprovalPerson = Pa.PersonCode ");
-                sql.Append("        and Pa.SeqNo > 1 ");
-                sql.Append("        and Pa.ApprovalStatus = 2 ");
-                sql.Append("  ) ");
-                sql.Append("    on Cld.ConstructionCode = Cbi.ConstructionCode ");
 
-                sql.Append("where ");
-                sql.Append("  Cld.GroupCount = 2 ");
+                sql.Append("        inner join ConstructionBaseinfoDetail as Cbd ");
+                sql.Append("           on Cbd.ConstructionCode = Cld.ConstructionCode ");
+                sql.AppendFormat("     and Cbd.DetailNo = {0} ", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
+
+                sql.Append("        inner join SubContractorMaster as Sc");
+                sql.Append("           on Sc.COMPANYCODE = Cld.CompanyCode ");
+                sql.AppendFormat("     and Sc.LABOURKIND = {0} ", m_Labourkind);
+
+                sql.Append("        left join ConstructionLedgerExcute AS Cle ");
+                sql.Append("           on Cle.ConstructionCode = Cld.ConstructionCode ");
+                sql.Append("           and Cle.GroupCount = Cld.GroupCount ");
+                sql.Append("           and Cle.LineCount = Cld.LineCount ");
+                sql.AppendFormat("     and Cle.ColumnCount = (PERIOD_DIFF({0}", m_Select_TargetDate);
+                sql.AppendFormat("        , DATE_FORMAT(CL.ConstructionStart, '%Y%m')) + {0}) ", DefaultCol);
+                
+                sql.Append("        left join PurchaseOrderDate as Pod ");
+                sql.Append("           on Cld.CompanyCode = Pod.CompanyCode ");
+                sql.Append("           and Cld.ConstructionCode = Pod.ConstructionCode ");
+                sql.Append("        left join (ConstructionBaseInfo as Cbi ");
+                sql.Append("           left join PersonInChargeMaster as Picm ");
+                sql.Append("              on Cbi.ConstructionPersonCode = Picm.PersonCode) ");
+                sql.Append("        on Cld.ConstructionCode = Cbi.ConstructionCode ");
+
+                sql.Append("      left join approvalmaster As AppM ");
+                sql.AppendFormat("  on AppM.ApprovalCode = {0} ", Appcode);
+                sql.Append("        And AppM.DepartmentCode = Picm.DepartmentCode ");
+                sql.Append("        join PersonInChargeMaster as AppPName ");
+                sql.Append("          on AppPName.PersonCode = AppM.ApprovalPerson ");
+
+                sql.Append(" Where ");
+                sql.AppendFormat("  Cld.GroupCount = {0} ", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
                 sql.Append("  and Cld.CompanyCode > 0 ");
-                sql.AppendFormat("  and Cld.CompanyType = {0}", m_Labourkind);
+                sql.AppendFormat("  and Cld.CompanyType = {0}", (int)CommonDefine.CodeDataType.Subconstractor);
 
-                sql.Append(" ");
-                sql.Append("union ");
-                sql.Append(" ");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
+        #region ‘¶�Ý�¿‹�‚Ü‚Æ‚ßƒf�[ƒ^“Ç�žSQL�ì�¬
+        /// <summary>
+        /// ‘¶�Ý�¿‹�‚Ü‚Æ‚ßƒf�[ƒ^“Ç�žSQL�ì�¬
+        /// </summary>
+        /// <param name="PaInfo"></param>
+        /// <param name="sql"></param>
+        private void CreateSQLType2Exists(PaymentApprovalInfo PaInfo, ref StringBuilder sql)
+        {
+            try
+            {
+                int Appcode = 0;
+                if (m_Labourkind == (int)CommonDefine.LabourKinds.Labor)
+                    Appcode = (int)ClsExcute.ApprovalListNo.FeePayment;
+                else
+                    Appcode = (int)ClsExcute.ApprovalListNo.SubConstrPayment;
+
                 sql.Append(" select ");
                 sql.Append("  ifnull(Bd.SeqNo, 1) as SeqNo ");
                 sql.Append("  , ifnull(Bdd.LineCount, 0) as LineCount ");
@@ -3595,7 +4260,7 @@
                 sql.Append("  , ifnull(Pdd.ApprovalPersonCode, 0) as ApprovalPersonCode ");
                 sql.Append("  , ifnull(Picm.SealPrintName, '') as TantoNM ");
                 sql.Append("  , DATE_FORMAT( ");
-                sql.AppendFormat("    ifnull(Pdd.ApprovalDate, '{0}') ", DateTime.MinValue.ToShortDateString());
+                sql.AppendFormat("    ifnull(Pdd.APPROVALDATE, '{0}') ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    , '%Y/%m/%d' ");
                 sql.Append("  ) as ApprovalDate ");
                 sql.Append("  , ifnull(Pdd.ApprovalEndFlg, 0) as ApprovalEndFlg ");
@@ -3604,115 +4269,105 @@
                 sql.Append("  , ifnull(Cbi.ConstrSubPersonCode, 0) as ConstrSubPersonCode ");
                 sql.Append("  , ifnull(Cbi.ConstructionInstructor, 0) as ConstructionInstructor ");
                 sql.Append("  , Picm2.DepartmentCode ");
-                sql.Append("  , case ifnull(Pod.SendDate, '') ");
+
+                sql.Append("  , case ifnull(DATE(Pod.SendDate), '') ");
                 sql.Append("    when '' then '�~' ");
                 sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderMailingDate ");
-                sql.Append("  , case ifnull(Pod.ReturnCheckDate, '') ");
+                
+                sql.Append("  , case ifnull(DATE(Pod.ReturnCheckDate), '') ");
                 sql.Append("    when '' then '�~' ");
                 sql.AppendFormat("    when '{0}' then '�~' ", DateTime.MinValue.ToShortDateString());
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PurchaseOrderReturnDate ");
+                
                 sql.Append("  , case ifnull(Pa.PersonCode, 0) ");
-                sql.Append("    when 0 then case Bdd.ConstructionCode ");
-                sql.Append("      when 0 then '' ");
-                sql.Append("      else '�~' ");
-                sql.Append("      end ");
+                sql.Append("    when 0 then '�~' ");
                 sql.Append("    else '�›' ");
                 sql.Append("    end as PaData ");
+
                 sql.Append("  , Bdd.CONSTRUCTIONROWCNT as LinePoint ");
                 sql.Append("  , Bdd.CONSTRUCTIONCOLCNT as ColPoint  ");
                 sql.Append("  , Cld.SecondString as DetailName ");
-                sql.Append(" from ");
-                sql.Append("  BillingData as Bd join ( ");
-                sql.Append("    BillingDataDetail as Bdd");
-                sql.Append("      left join SubContractorMaster as Scm ");
-                sql.Append("      on Bdd.CompanyCode = Scm.CompanyCode ");
-                sql.AppendFormat("      and Scm.LabourKind = {0} ", m_Labourkind);
-                sql.Append("      left join ( ");
-                sql.Append("        PaymentDataDetail as Pdd ");
-                sql.Append("          left join PersonInChargeMaster as Picm ");
-                sql.Append("            on ifnull(Pdd.ApprovalPersonCode, - 1) = Picm.PersonCode ");
-                sql.Append("      ) ");
-                sql.Append("        on Bdd.CompanyCode = Pdd.CompanyCode ");
-                sql.Append("        and Bdd.TargetDate = Pdd.TargetDate ");
-                sql.Append("        and Bdd.SeqNo = Pdd.SeqNo ");
-                sql.Append("        and Bdd.LineCount = Pdd.LineCount ");
-                sql.Append("      left join ( ");
-                sql.Append("        ConstructionBaseInfo as Cbi ");
-                sql.Append("          left join ( ");
-                sql.Append("            PersonInChargeMaster as Picm2 ");
-                sql.Append("              left join ApprovalMaster as Am ");
-                sql.Append("                on Picm2.DepartmentCode = Am.DepartmentCode ");
-                sql.Append("                and Am.ApprovalCode = 3 ");
-                sql.Append("                and ApprovalAuthority = 1 ");
-                sql.Append("          ) ");
+                sql.Append("  , PersonApp.PersonCode As M1 ");
+                sql.Append("  , PersonApp.ApprovalCode As M2 ");
+                sql.Append("  , PersonApp.OrderNo As M3 ");
+                sql.Append("  , PayApp.APPROVALPERSON As M4 ");
+                sql.Append("  , PersonApp.ApprovalStatus As M5 ");
+                sql.Append("  , PayApp.APPROVALDATE As M6 ");
+                sql.Append("  , AppM.ApprovalCode As M7 ");
+                sql.Append("  , AppM.DepartmentCode As M8 ");
+                sql.Append("  , AppM.SeqNo As M9 ");
+                sql.Append("  , AppM.DisplayOrder As M10 ");
+                sql.Append("  , AppM.ApprovalPerson As M11 ");
+                sql.Append("  , AppPName.PersonName As M12 ");
+                sql.Append("  , AppM.ApprovalAuthority As M13  ");
+
+                sql.Append(" From BillingData as Bd");
+                sql.Append("       join (BillingDataDetail as Bdd");
+                sql.Append("         left join (PaymentDataDetail as Pdd ");
+                sql.Append("              left join PersonInChargeMaster as Picm ");
+                sql.Append("                   on Picm.PersonCode = ifnull(Pdd.ApprovalPersonCode, -1)");
+                sql.Append("         )");
+                sql.Append("           on Bdd.CompanyCode = Pdd.CompanyCode ");
+                sql.Append("           and Bdd.TargetDate = Pdd.TargetDate ");
+                sql.Append("           and Bdd.SeqNo = Pdd.SeqNo ");
+                sql.Append("           and Bdd.LineCount = Pdd.LineCount ");
+
+                sql.Append("       join (ConstructionBaseInfo as Cbi ");
+                sql.Append("          left join PersonInChargeMaster as Picm2 ");
                 sql.Append("            on Cbi.ConstructionPersonCode = Picm2.PersonCode ");
                 sql.Append("          left join ProcessApproval as Pa ");
-                sql.Append("            on Cbi.ConstructionCode = Pa.ConstructionCode ");
-                sql.Append("            and Am.ApprovalPerson = Pa.PersonCode ");
-                sql.Append("            and Pa.SeqNo > 1 ");
-                sql.Append("            and Pa.ApprovalStatus = 2 ");
-                sql.Append("      ) ");
-                sql.Append("        on Bdd.ConstructionCode = Cbi.ConstructionCode ");
-                sql.Append("      left join ConstructionBaseinfoDetail as Cbd");
+                sql.Append("            on Pa.ConstructionCode = Cbi.ConstructionCode");
+                sql.AppendFormat("      and Pa.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                sql.Append("            and Pa.SeqNo = 1 ");
+                sql.AppendFormat("      and Pa.ApprovalStatus = {0}) ", (int)CommonDefine.ApprovalStatus.Approval);
+                sql.Append("       on Bdd.ConstructionCode = Cbi.ConstructionCode ");
+                
+                sql.Append("       left join ConstructionBaseinfoDetail as Cbd");
                 sql.Append("                 on Cbd.ConstructionCode = Cbi.ConstructionCode ");
-                sql.AppendFormat("           and Cbd.DetailNo = {0} ", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
-                sql.Append("  ) ");
+                sql.AppendFormat("           and Cbd.DetailNo = {0}) ", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
+
                 sql.Append("       on Bd.CompanyCode = Bdd.CompanyCode ");
                 sql.Append("       and Bd.TargetDate = Bdd.TargetDate ");
                 sql.Append("       and Bd.SeqNo = Bdd.SeqNo ");
                 sql.AppendFormat(" and Bd.TargetDate = {0} ", m_Select_TargetDate);
-                sql.Append("  left join ( ");
-                sql.Append("    PurchaseOrderDate as Pod ");
-                sql.Append("  ) on Bd.CompanyCode = Pod.CompanyCode ");
-                sql.Append("  and Bdd.ConstructionCode = Pod.ConstructionCode ");
+
+                sql.Append("  left join (PurchaseOrderDate as Pod )");
+                sql.Append("       on Bd.CompanyCode = Pod.CompanyCode ");
+                sql.Append("       and Bdd.ConstructionCode = Pod.ConstructionCode ");
                 sql.Append("  left join constructionledger as Cl");
-                sql.Append("    ON Cl.ConstructionCode = Bdd.CONSTRUCTIONCODE");
-                sql.AppendFormat("    And Cl.ComplateFlg = {0}", (int)ConstructionLedger.CompFlagDef.Operateing);
+                sql.Append("       ON Cl.ConstructionCode = Bdd.CONSTRUCTIONCODE");
+                sql.AppendFormat(" And Cl.ComplateFlg = {0}", (int)ConstructionLedger.CompFlagDef.Operateing);
                 sql.Append("  Left join constructionledgerDetail as Cld");
-                sql.Append("    ON Cld.ConstructionCode = Bdd.CONSTRUCTIONCODE");
-                sql.AppendFormat("    And Cld.GroupCount = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
-                sql.Append("    And Cld.LineCount = Bdd.LineCount");
+                sql.Append("       ON Cld.ConstructionCode = Bdd.CONSTRUCTIONCODE");
+                sql.AppendFormat(" And Cld.GroupCount = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                sql.Append("       And Cld.LineCount = Bdd.CONSTRUCTIONROWCNT");
 
-                sql.Append(") AS T ");
+                sql.Append("  left join approvalmaster As AppM ");
+                sql.AppendFormat(" on AppM.ApprovalCode = {0} ", Appcode);
+                sql.Append("       And AppM.DepartmentCode = Picm.DepartmentCode ");
+                sql.Append("     Left join PersonInChargeMaster as AppPName ");
+                sql.Append("        on AppPName.PersonCode = AppM.ApprovalPerson ");
+                sql.Append("     Left Join personapproval As PersonApp ");
+                sql.Append("        On PersonApp.PersonCode = Cbi.ConstructionPersonCode ");
+                sql.Append("        And PersonApp.PersonCodeApproval = AppPName.PersonCode ");
 
-                sql.Append(" group by ");
-                sql.Append("  T.SeqNo ");
-                sql.Append("  , T.LineCount ");
-                sql.Append("  , T.CompanyCode ");
-                sql.Append("  , T.CompanyName ");
-                sql.Append("  , T.DisplayOrder ");
-                sql.Append("  , T.ConstructionCode ");
-                sql.Append("  , T.FieldName ");
-                sql.Append("  , T.BillPrice ");
-                sql.Append("  , T.HighwPrice ");
-                sql.Append("  , T.Hardwprice ");
-                sql.Append("  , T.IndswasteTax ");
-                sql.Append("  , T.UpdateDate ");
-                sql.Append("  , T.Bikou ");
-                sql.Append("  , T.KojiSeikyu ");
-                sql.Append("  , T.KojiNebiki ");
-                sql.Append("  , T.KojiSousai ");
-                sql.Append("  , T.JikaiKurikosi ");
-                sql.Append("  , T.KojiKousoku ");
-                sql.Append("  , T.KojiKanamono ");
-                sql.Append("  , T.KojiSannhaiZei ");
-                sql.Append("  , T.CnstrPrice ");
-                sql.Append("  , T.CnstrpriceExist ");
-                sql.Append("  , T.ApprovalPersonCode ");
-                sql.Append("  , T.TantoNM ");
-                sql.Append("  , T.ApprovalDate ");
-                sql.Append("  , T.ApprovalEndFlg ");
-                sql.Append("  , T.SalesPersonCode ");
-                sql.Append("  , T.ConstructionPersonCode ");
-                sql.Append("  , T.ConstrSubPersonCode ");
-                sql.Append("  , T.ConstructionInstructor ");
-                sql.Append("  , T.DepartmentCode ");
-                sql.Append("  , T.PurchaseOrderMailingDate ");
-                sql.Append("  , T.PurchaseOrderReturnDate ");
-                sql.Append("  , T.PaData ");
+                sql.AppendFormat("  And DATE (PersonApp.OrderDate) = '{0}' ", GetTargetDate().ToShortDateString());
+                sql.Append("        And  PersonApp.SeqNo > 1");
+
+                sql.Append("     Left Join paymentapprovalinfo As PayApp");
+                sql.Append("        On PayApp.COMPANYCODE = Pdd.COMPANYCODE");
+                sql.Append("        And PayApp.TARGETDATE = Pdd.TARGETDATE");
+                sql.Append("        And PayApp.SEQNO = Pdd.SEQNO");
+                sql.Append("        And PayApp.LINECOUNT = Pdd.LINECOUNT");
+                sql.Append("        And PayApp.APPROVALPERSON = AppM.ApprovalPerson");
+
+                sql.Append("         , SubContractorMaster as Scm ");
+                sql.Append("              where Bdd.CompanyCode = Scm.CompanyCode ");
+                sql.AppendFormat("        and Scm.LabourKind = {0} ", m_Labourkind);
+
             }
             catch (Exception ex)
             {
@@ -3797,7 +4452,7 @@
             {
 
                 Result = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted
                                                                 && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode)
                     .Sum(y => CommonMotions.cnvLong(y.Cells[(int)TargetColumn].Value));
 
@@ -3825,7 +4480,7 @@
 
                 // •K—v�s’Š�o ‹ÆŽÒƒR�[ƒh�A˜A”Ô�A�s”Ô�†�¸�‡
                 DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                                    && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
                                                                          .OrderBy(x => x.Cells[m_Company_Column].Value)
                                                                          .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
                                                                          .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
@@ -3834,16 +4489,16 @@
                 foreach (DataGridViewRow r in Rows)
                 {
                     CommonMotions.chgBackColor(r.Cells[m_GenbaNM_Column], true);
+                    long nTotal = 0;
+                    // “ü—Í‹àŠz‚ð�WŒv‚·‚é
+                    for (int i = (int)DispColumn.KojiSeikyu; i <= (int)DispColumn.KojiSannhaiZei; i++)
+                    {
+                        if (i == (int)DispColumn.JikaiKurikosi) continue;
+                        nTotal += CommonMotions.cnvInt(r.Cells[i].Value);
+                    }
+
                     if (CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value) == 0
-                        &&
-                        ((CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value) != 0
-                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiNebiki].Value) != 0
-                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSousai].Value) != 0
-                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKosoku].Value) != 0
-                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) != 0
-                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) != 0)
-                        //|| CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value) != -1) ‹¦—Í‹à—L–³‚Íƒ`ƒFƒbƒN‚É“ü‚ê‚È‚¢
-                    || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray))
+                        && ((nTotal != 0) || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray))
                     {
                         CommonMotions.chgBackColor(r.Cells[m_GenbaNM_Column], false);
                         MessageBox.Show("Œ»�ê‚ª‘I‘ð‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ�B", "ƒf�[ƒ^Šm”F", MessageBoxButtons.OK, MessageBoxIcon.Warning);
@@ -3862,6 +4517,263 @@
         }
         #endregion
 
+        #region ƒf�[ƒ^“o˜^‚c‚a‚ÌRollBcak�ˆ—�
+        /// <summary>
+        /// ƒf�[ƒ^“o˜^‚c‚a‚ÌRollBcak�ˆ—�
+        /// </summary>
+        private void DataEntryRollBack(IOBillingData IoBd,
+                                        IOBillingDataDetail IoBdD,
+                                        IOPaymentDataDetail IoPdD,
+                                        IOPaymentApprovalInfo IoPaI,
+                                        IOBillingPaymentSummary IoBps)
+        {
+            try
+            {
+                IoBd.rollback();
+                IoBdD.rollback();
+                IoPdD.rollback();
+                IoPaI.rollback();
+                IoBps.rollback();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ƒf�[ƒ^•Ï�Xƒ`ƒFƒbƒN
+        /// <summary>
+        /// ƒf�[ƒ^•Ï�Xƒ`ƒFƒbƒN
+        /// </summary>
+        /// <returns></returns>
+        private bool CheckDataDelete(IOBillingDataDetail IoBdD, ref List<BillingDataDetail> BdDList, bool bError)
+        {
+            try
+            {
+                bool bModify = false;
+                DataGridView dgv = getShowingView();
+
+                //�@�í�œ‘Î�Û‚Ì‹ÆŽÒƒR�[ƒh�A˜A”Ô‚Ìƒf�[ƒ^‚Ì’†‚Ì‚¢‚¸‚ê‚©‚ª‘¼ŽÒ‚É‚æ‚Á‚Ä•Ï�X‚³‚ê‚Ä‚¢‚é‚©ƒ`ƒFƒbƒN
+                var rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                    && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) == DataRowState.Deleted)
+                                                           .GroupBy(c => new
+                                                           {
+                                                               CompanyCode = CommonMotions.cnvInt(c.Cells[m_Company_Column].Value),
+                                                               SeqNo = CommonMotions.cnvInt(c.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                           })
+                                                           .ToArray();
+
+                StringBuilder strWhere = new StringBuilder();
+                if (rows.Count() == 0) return false;
+
+                foreach (var r in rows)
+                {
+                    strWhere.Clear();
+                    strWhere.AppendFormat(" Where CompanyCode = {0}", r.Key.CompanyCode);
+                    strWhere.AppendFormat(" and TargetDate = {0}", m_Select_TargetDate);
+                    strWhere.AppendFormat(" and SeqNo = {0}", r.Key.SeqNo);
+                    strWhere.Append(" order by CompanyCode, SeqNo, LineCount");
+                    BdDList.Clear();
+                    if (!IoBdD.SelectAction(strWhere.ToString(), ref BdDList, false))
+                    {
+                        MessageBox.Show("“o˜^Šm”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bError = true;
+                        return false;
+                    }
+                    // Žæ“¾ƒf�[ƒ^‚ª–³‚¯‚ê‚ÎŽŸ‚Ì�s‚Ö
+                    if (BdDList.Count == 0) continue;
+
+                    foreach (BillingDataDetail listRow in BdDList)
+                    {
+                        // ƒOƒŠƒbƒh•\Ž¦ƒf�[ƒ^‚ÌŽæ“¾
+                        DataGridViewRow[] checkRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                                && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) == DataRowState.Modified
+                                                                                                && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == listRow.CompanyCode
+                                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == listRow.SeqNo
+                                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == listRow.LineCount)
+                                                                                    .ToArray();
+                        // ƒf�[ƒ^�X�V“ú•t‚Ì”äŠr
+                        DateTime dtUpDate = CommonMotions.cnvDate(checkRow[0].Cells[(int)DispColumn.UpdateDate].Value);
+                        if (checkRow.Count() != 0 && listRow.UpdateDate != dtUpDate)
+                        {
+                            MessageBox.Show("‘¼‚Ìƒ†�[ƒU�[‚É‚æ‚Á‚Ä�X�V‚³‚ê‚Ä‚¢‚Ü‚·�Bƒf�[ƒ^‚ð�Ä•\Ž¦‚µ‚Ä‰º‚³‚¢�B", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            bModify= true;
+                            break;
+                        }
+                    }
+                }
+
+                return bModify;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                bError = true;
+                return false;
+            }
+        }
+        #endregion
+
+        #region �sƒf�[ƒ^�í�œ�ˆ—�
+        /// <summary>
+        /// �sƒf�[ƒ^�í�œ�ˆ—�
+        /// </summary>
+        /// <returns></returns>
+        private bool DataDeleteProcess(IOBillingData IoBd,
+                                        IOBillingDataDetail IoBdD,
+                                        IOPaymentDataDetail IoPdD,
+                                        IOPaymentApprovalInfo IoPaI,
+                                        int TargetDate)
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                //�@�í�œ‘Î�Û‚Ì‹ÆŽÒƒR�[ƒh�A˜A”Ô‚Ìƒf�[ƒ^‚Ì’†‚Ì‚¢‚¸‚ê‚©‚ª‘¼ŽÒ‚É‚æ‚Á‚Ä•Ï�X‚³‚ê‚Ä‚¢‚é‚©ƒ`ƒFƒbƒN
+                var rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                    && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) == DataRowState.Deleted)
+                                                           .GroupBy(c => new
+                                                           {
+                                                               CompanyCode = CommonMotions.cnvInt(c.Cells[m_Company_Column].Value),
+                                                               SeqNo = CommonMotions.cnvInt(c.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                           })
+                                                           .ToArray();
+
+                int iCompanyCode = 0;
+                int iSeqNo = 0;
+                int iLineCount = 0;
+                StringBuilder strWhere = new StringBuilder();
+                List<BillingData> BdList = new List<BillingData>();
+                List<BillingDataDetail> BdDList = new List<BillingDataDetail>();
+                List<PaymentDataDetail> PdDList = new List<PaymentDataDetail>();
+                List<PaymentApprovalInfo> PaIList = new List<PaymentApprovalInfo>();
+                foreach (var r in rows)
+                {
+                    // �í�œ�@•K—v�s’Š�o�i�í�œ‚ª•K—v‚È‹ÆŽÒ�A˜A”Ô‚ð‘S‚Ä�í�œ�A•K—v‚È�s‚Ì�s”Ô�†‚ð�U‚è‚È‚¨‚·�j
+                    DataGridViewRow[] DeleteRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                            && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == r.Key.CompanyCode
+                                                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == r.Key.SeqNo)
+                                                                                   .OrderBy(y => CommonMotions.cnvInt(y.Cells[m_Company_Column].Value))
+                                                                                   .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.GroupSeqNo].Value))
+                                                                                   .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.LineCount].Value))
+                                                                                   .ToArray();
+                    iCompanyCode = 0;
+                    iSeqNo = 0;
+                    iLineCount = 0;
+                    int iNewLineCount = 1;
+                    foreach (DataGridViewRow delr in DeleteRows)
+                    {
+                        if (iCompanyCode == 0 || iSeqNo == 0)
+                        {
+                            iCompanyCode = CommonMotions.cnvInt(delr.Cells[m_Company_Column].Value);
+                            iSeqNo = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.GroupSeqNo].Value);
+
+                            // ‹Æ–±�¿‹�ƒf�[ƒ^
+                            // ƒ�ƒbƒN
+                            if (!IoBd.RowLock(iCompanyCode, TargetDate, iSeqNo, false))
+                            {
+                                throw new Exception("‹Æ–±�¿‹�ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
+                            }
+
+                            // �í�œ�i‹Æ–±�¿‹�ƒf�[ƒ^�j
+                            strWhere.Clear();
+                            strWhere.Append(IoBd.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo));
+                            BdList.Clear();
+                            if (IoBd.SelectAction(strWhere.ToString(), ref BdList, false) && BdList.Count > 0)
+                            {
+                                if (!IoBd.DeleteAction(strWhere.ToString(), false))
+                                {
+                                    throw new Exception("‹Æ–±�¿‹�ƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
+                                }
+                            }
+                        }
+
+                        // �sƒJƒEƒ“ƒgŽæ“¾
+                        iLineCount = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value);
+
+                        // ’Ç‰Á�sˆÈŠO‚ð�í�œ‚·‚é
+                        if (cnvRowState(delr.Cells[(int)DispColumn.RowState].Value) != DataRowState.Added)
+                        {
+                            // ‹Æ–±–¾�×ƒf�[ƒ^
+                            // ƒ�ƒbƒN
+                            if (!IoBdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                            {
+                                throw new Exception("‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
+                            }
+
+                            // ƒf�[ƒ^�X�V
+                            strWhere.Clear();
+                            strWhere.Append(IoBdD.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, iLineCount));
+                            BdDList.Clear();
+                            if (IoBdD.SelectAction(strWhere.ToString(), ref BdDList, false) && BdDList.Count > 0)
+                            {
+                                if (!IoBdD.DeleteAction(strWhere.ToString(), false))
+                                {
+                                    throw new Exception("‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
+                                }
+                            }
+
+                            // Žx•¥–¾�×ƒf�[ƒ^
+                            strWhere.Clear();
+                            strWhere.Append(IoPdD.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, iLineCount));
+                            // ƒf�[ƒ^Šm”F
+                            PdDList.Clear();
+                            if (!IoPdD.SelectAction(strWhere.ToString(), ref PdDList, false) && PdDList.Count > 0)
+                            {
+                                // ƒ�ƒbƒN
+                                if (!IoPdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                                {
+                                    throw new Exception("Žx•¥–¾�×ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
+                                }
+
+                                // ƒf�[ƒ^�X�V
+                                if (!IoPdD.DeleteAction(strWhere.ToString(), false))
+                                {
+                                    throw new Exception("Žx•¥–¾�×ƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
+                                }
+                            }
+
+                            // Žx•¥�³”F�î•ñƒf�[ƒ^
+                            strWhere.Clear();
+                            strWhere.Append(IoPaI.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, iLineCount, -1));
+                            // ƒf�[ƒ^Šm”F
+                            PaIList.Clear();
+                            if (!IoPaI.SelectAction(strWhere.ToString(), ref PaIList, false) && PaIList.Count > 0)
+                            {
+                                // ƒ�ƒbƒN
+                                if (!IoPdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                                {
+                                    throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
+                                }
+
+                                // ƒf�[ƒ^�X�V
+                                if (!IoPdD.DeleteAction(strWhere.ToString(), false))
+                                {
+                                    throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
+                                }
+                            }
+                        }
+
+                        // �s”Ô�†‚ð�U‚è‚È‚¨‚·
+                        if (cnvRowState(delr.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
+                        {
+                            delr.Cells[(int)DispColumn.LineCount].Value = iNewLineCount;
+                            iNewLineCount++;
+                        }
+                    }
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message, "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return false;
+            }
+        }
+        #endregion
+
         #region ƒf�[ƒ^“o˜^
         /// <summary>
         /// ƒf�[ƒ^“o˜^
@@ -3877,10 +4789,9 @@
 
             DataGridView dgv = getShowingView();
 
-            List<BillingData> BdList;
+            List<BillingData> BdList = new List<BillingData>();
             List<BillingDataDetail> BdDList = new List<BillingDataDetail>();
             List<PaymentDataDetail> PdDList = new List<PaymentDataDetail>();
-            List<PaymentApprovalInfo> PaIList = new List<PaymentApprovalInfo>();
             List<BillingPaymentSummary> BpsList = new List<BillingPaymentSummary>();
             List<ConstructionLedgerExcute> CleEntryList = new List<ConstructionLedgerExcute>();
 
@@ -3887,7 +4798,6 @@
             BillingData BdWork = new BillingData();
             BillingDataDetail BdDWork;
             PaymentDataDetail PdDWork;
-            PaymentApprovalInfo PaIWork;
             BillingPaymentSummary BpsWork = new BillingPaymentSummary();
 
             int iCompanyCode = 0, iSeqNo = 0, iLineCount = 0, iLineMax = 0;
@@ -3900,190 +4810,56 @@
             string strBdWhere = "";
             string strBdDWhere = "";
             string strPdDWhere = "";
-            string strPaIWhere = "";
             string strBpsWhere = "";
 
+            StringBuilder strWhere = new StringBuilder();
+            StringBuilder MaxLineNoSql = new StringBuilder();
             try
             {
+                // ƒvƒ�ƒOƒŒƒX•\Ž¦�§Œä
+                ProgressBarCtrl(true);
 
-                //�@�í�œ‘Î�Û‚Ì‹ÆŽÒƒR�[ƒh�A˜A”Ô‚Ìƒf�[ƒ^‚Ì’†‚Ì‚¢‚¸‚ê‚©‚ª‘¼ŽÒ‚É‚æ‚Á‚Ä•Ï�X‚³‚ê‚Ä‚¢‚é‚©ƒ`ƒFƒbƒN
-                var rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value == DataRowState.Deleted)
-                                                           .GroupBy(c => new
-                                                           {
-                                                               CompanyCode = CommonMotions.cnvInt(c.Cells[m_Company_Column].Value),
-                                                               SeqNo = CommonMotions.cnvInt(c.Cells[(int)DispColumn.GroupSeqNo].Value)
-                                                           })
-                                                           .ToArray();
+                // ˆê’UƒZƒ‹‚Ì’l•Ï�XƒCƒxƒ“ƒg‚ð–³Œø‚É‚·‚é
+                dgv.CellValueChanged -= DataGridView_CellValueChanged;
 
-                if (rows.Count() != 0)
-                {
-                    foreach (var r in rows)
-                    {
-                        string strWhere = string.Format(" Where CompanyCode = {0}", r.Key.CompanyCode);
-                        strWhere = string.Format(" and TargetDate = {0}", m_Select_TargetDate);
-                        strWhere = string.Format(" and SeqNo = {0}", r.Key.SeqNo);
-                        strWhere = " order by CompanyCode, SeqNo, LineCount";
-                        BdDList.Clear();
-                        if (!IoBdD.SelectAction(strWhere, ref BdDList))
-                        {
-                            MessageBox.Show("“o˜^Šm”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return false;
-                        }
-                        // Žæ“¾ƒf�[ƒ^‚ª–³‚¯‚ê‚ÎŽŸ‚Ì�s‚Ö
-                        if (BdDList.Count == 0) continue;
+                DataProgressBar.Maximum = dgv.RowCount + 6;
+                DataProgressBar.Value = 0;
 
-                        foreach (BillingDataDetail listRow in BdDList)
-                        {
-                            DataGridViewRow[] checkRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value == DataRowState.Modified
-                                                                                                    && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == listRow.CompanyCode
-                                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == listRow.SeqNo
-                                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == listRow.LineCount)
-                                                                                        .ToArray();
-                            if (checkRow.Count() != 0 && listRow.UpdateDate != CommonMotions.cnvDate(checkRow[0].Cells[(int)DispColumn.UpdateDate].Value))
-                            {
-                                MessageBox.Show("‘¼‚Ìƒ†�[ƒU�[‚É‚æ‚Á‚Ä�X�V‚³‚ê‚Ä‚¢‚Ü‚·�Bƒf�[ƒ^‚ð�Ä•\Ž¦‚µ‚Ä‰º‚³‚¢�B", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                                return false;
-
-                            }
-                        }
-                    }
-                    // �í�œ�ˆ—�ŽÀ�sƒtƒ‰ƒO
-                    bDeleteData = true;
-                }
-
-
                 int TargetDate = m_Select_TargetDate;
 
-                IoBd.connect();
-                IoBd.beginTran();
+                IoBd.connect(); IoBd.beginTran();
+                IoBdD.connect(); IoBdD.beginTran();
+                IoPdD.connect(); IoPdD.beginTran();
+                IoPaI.connect(); IoPaI.beginTran();
+                IoBps.connect(); IoBps.beginTran();
 
-                IoBdD.connect();
-                IoBdD.beginTran();
+                // �í�œ�ˆ—�ŽÀ�sƒtƒ‰ƒO
+                bool bError = false;
+                bDeleteData = CheckDataDelete(IoBdD, ref  BdDList, bError);
+                if (bError) return false;
 
-                IoPdD.connect();
-                IoPdD.beginTran();
+                DataProgressBar.Value++;
+                DataProgressBar.Update();
 
-                IoPaI.connect();
-                IoPaI.beginTran();
-
-                IoBps.connect();
-                IoBps.beginTran();
-
-                ArrayList wrkArray = new ArrayList();
                 try
                 {
+
                     // �í�œ
                     if (bDeleteData == true)
                     {
-                        foreach (var r in rows)
+                        if (!DataDeleteProcess(IoBd, IoBdD, IoPdD, IoPaI, TargetDate))
                         {
-                            // �í�œ�@•K—v�s’Š�o�i�í�œ‚ª•K—v‚È‹ÆŽÒ�A˜A”Ô‚ð‘S‚Ä�í�œ�A•K—v‚È�s‚Ì�s”Ô�†‚ð�U‚è‚È‚¨‚·�j
-                            DataGridViewRow[] DeleteRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                                                    && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == r.Key.CompanyCode
-                                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == r.Key.SeqNo)
-                                                                                           .OrderBy(y => CommonMotions.cnvInt(y.Cells[m_Company_Column].Value))
-                                                                                           .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.GroupSeqNo].Value))
-                                                                                           .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.LineCount].Value))
-                                                                                           .ToArray();
-                            iCompanyCode = 0;
-                            iSeqNo = 0;
-                            iLineCount = 0;
-                            int iNewLineCount = 1;
-                            foreach (DataGridViewRow delr in DeleteRows)
-                            {
-                                if (iCompanyCode == 0 || iSeqNo == 0)
-                                {
-                                    iCompanyCode = CommonMotions.cnvInt(delr.Cells[m_Company_Column].Value);
-                                    iSeqNo = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.GroupSeqNo].Value);
-
-                                    // ‹Æ–±�¿‹�ƒf�[ƒ^
-                                    // ƒ�ƒbƒN
-                                    if (!IoBd.RowLock(iCompanyCode, TargetDate, CommonMotions.cnvInt(delr.Cells[(int)DispColumn.GroupSeqNo].Value), false))
-                                    {
-                                        throw new Exception("‹Æ–±�¿‹�ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
-                                    }
-
-                                    // �í�œ�i‹Æ–±�¿‹�ƒf�[ƒ^�j
-                                    strBdWhere = IoBd.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo);
-                                    wrkArray.Clear();
-                                    if (IoBd.ExecuteReader(strBdWhere, ref wrkArray, false))
-                                    {
-                                        if (!IoBd.DeleteAction(strBdWhere, false))
-                                        {
-                                            throw new Exception("‹Æ–±�¿‹�ƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                        }
-                                    }
-                                }
-
-                                iLineCount = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value);
-                                //if (iLineCount != CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value))
-                                //{
-                                // ’Ç‰Á�sˆÈŠO‚ð�í�œ‚·‚é
-                                if ((DataRowState)delr.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
-                                {
-                                    // ‹Æ–±–¾�×ƒf�[ƒ^
-                                    // ƒ�ƒbƒN
-                                    if (!IoBdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
-                                    {
-                                        throw new Exception("‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
-                                    }
-
-                                    // ƒf�[ƒ^�X�V
-                                    strBdDWhere = IoBdD.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value));
-                                    wrkArray.Clear();
-                                    if (IoBdD.ExecuteReader(strBdDWhere, ref wrkArray, false))
-                                    {
-                                        if (!IoBdD.DeleteAction(strBdDWhere, false))
-                                        {
-                                            throw new Exception("‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�F�í�œ‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                        }
-                                    }
-
-                                    // Žx•¥–¾�×ƒf�[ƒ^
-                                    strPdDWhere = IoPdD.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value));
-                                    // ƒf�[ƒ^Šm”F
-                                    PdDList.Clear();
-                                    if (!IoPdD.SelectAction(strPdDWhere, ref PdDList, false))
-                                    {
-                                        throw new Exception("Žx•¥–¾�×ƒf�[ƒ^�F“o˜^Šm”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                    }
-                                    if (PdDList.Count != 0)
-                                    {
-                                        // ƒ�ƒbƒN
-                                        if (!IoPdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
-                                        {
-                                            throw new Exception("Žx•¥–¾�×ƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
-                                        }
-
-                                        // ƒf�[ƒ^�X�V
-                                        wrkArray.Clear();
-                                        if (IoPdD.ExecuteReader(strPdDWhere, ref wrkArray, false))
-                                        {
-                                            if (!IoPdD.DeleteAction(strPdDWhere, false))
-                                            {
-                                                throw new Exception("Žx•¥–¾�×ƒf�[ƒ^�F�X�V‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                            }
-                                        }
-                                    }
-                                }
-                                //    iLineCount = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value);
-                                //}
-
-                                // �s”Ô�†‚ð�U‚è‚È‚¨‚·
-                                if ((DataRowState)delr.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
-                                {
-                                    delr.Cells[(int)DispColumn.LineCount].Value = iNewLineCount;
-                                    iNewLineCount++;
-                                }
-                            }
+                            // RollBack
+                            DataEntryRollBack(IoBd, IoBdD, IoPdD, IoPaI, IoBps);
+                            return false;
                         }
                     }
+                    DataProgressBar.Value++;
+                    DataProgressBar.Update();
 
                     // •K—v�s’Š�o ‹ÆŽÒƒR�[ƒh�A˜A”Ô�A�s”Ô�†�¸�‡
                     DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                                        && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
                                                                              .OrderBy(x => x.Cells[m_Company_Column].Value)
                                                                              .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
                                                                              .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
@@ -4094,27 +4870,18 @@
                     iLineCount = 0;
                     iLineMax = 0;
 
+                    int NowCompanyCode = 0;
+                    int NowSeqNo = 0;
                     foreach (DataGridViewRow r in Rows)
                     {
-                        // –¢“ü—Í�s‚Í�ˆ—�‚µ‚È‚¢
-                        //if (CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value) == 0 && // �HŽ–�Ú�×‘ä’ ‚æ‚èƒf�[ƒ^‚ª�ì�¬‚³‚ê‚é‚Ì‚Å�HŽ–”Ô�†‚Ì�Ý’è‚Í”»’è‚µ‚È‚¢
-                        if (CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSeikyu].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKosoku].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKanamono].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSannhaiZei].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKosoku].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiNebiki].Value) == 0 &&
-                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSousai].Value) == 0)
-                        {
-                            continue;
-                        }
+                        // •Ï�X‚È‚µ‚Í�ˆ—�‚µ‚È‚¢
+                        if (cnvRowState(r.Cells[(int)DispColumn.RowState].Value) == DataRowState.Unchanged) continue;
 
+                        NowCompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                        NowSeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
 
                         // ‹ÆŽÒƒR�[ƒh�A‚Ü‚½‚Í˜A”Ô‚ªˆÙ‚È‚é�ê�‡
-                        if (iCompanyCode != CommonMotions.cnvInt(r.Cells[m_Company_Column].Value) || iSeqNo != CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value))
+                        if (iCompanyCode != NowCompanyCode || iSeqNo != NowSeqNo)
                         {
 
                             if (bBdData == true)
@@ -4141,10 +4908,8 @@
 
                             // ‹ÆŽÒ�¿‹�ƒf�[ƒ^
                             bBdData = false;
-                            strBdWhere = IoBd.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value),
-                                                                        TargetDate,
-                                                                        CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value));
-                            BdList = new List<BillingData>();
+                            strBdWhere = IoBd.CreatePrimarykeyString(NowCompanyCode, TargetDate, NowSeqNo);
+                            BdList.Clear();
 
                             // ƒf�[ƒ^Šm”F
                             if (!IoBd.SelectAction(strBdWhere, ref BdList, false))
@@ -4158,9 +4923,9 @@
                             if (BdList.Count == 0)
                             {
                                 iLineMax = 0; // �V‹K‚È‚Ì‚Å0‚ð�Ý’è
-                                BdWork.CompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                                BdWork.CompanyCode = NowCompanyCode;
                                 BdWork.TargetDate = TargetDate;
-                                BdWork.SeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                                BdWork.SeqNo = iSeqNo != 0 ? iSeqNo : NowSeqNo;
                                 BdWork.BillPrice = GetSeqGoukei(dgv, BdWork.CompanyCode, BdWork.SeqNo, DispColumn.SomuSeikyu);
 
                                 BdList.Clear();
@@ -4174,8 +4939,8 @@
                             else
                             {
                                 // �s”Ô�†‚Ì�Å‘å‚ð�Ý’è
-                                StringBuilder MaxLineNoSql = new StringBuilder();
-                                MaxLineNoSql.AppendFormat(" where COMPANYCODE = {0}", CommonMotions.cnvInt(r.Cells[m_Company_Column].Value));
+                                MaxLineNoSql.Clear();
+                                MaxLineNoSql.AppendFormat(" where COMPANYCODE = {0}", iCompanyCode != 0 ? iCompanyCode : NowCompanyCode);
                                 MaxLineNoSql.AppendFormat(" and TARGETDATE = {0}", TargetDate);
                                 iLineMax = SelectMaxLineNo(IoBdD, MaxLineNoSql.ToString(), false);
                                 bBdData = true;
@@ -4184,13 +4949,13 @@
 
 
                             // ‹ÆŽÒƒR�[ƒh‚ª•Ï‚í‚éŽž‚Ì‚Ý
-                            if (iCompanyCode != CommonMotions.cnvInt(r.Cells[m_Company_Column].Value))
+                            if (iCompanyCode != NowCompanyCode)
                             {
                                 // ‹ÆŽÒ�¿‹�Žx•¥ƒTƒ}ƒŠ�[ƒf�[ƒ^-----------------------------------------------
                                 if (bMakeBpsData == true)
                                 {
                                     BillingPaymentSummary_DataEntry(dgv,
-                                                                    iCompanyCode,
+                                                                    iCompanyCode != 0 ? iCompanyCode : NowCompanyCode,
                                                                     bDeleteBpsData,
                                                                     iTantoShoninCount,
                                                                     IoBps,
@@ -4204,12 +4969,11 @@
 
                             }
 
-                            iCompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
-                            iSeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                            iCompanyCode = NowCompanyCode;
+                            iSeqNo = NowSeqNo;
                         }
 
-
-                        // ‹ÆŽÒ�¿‹�–¾�×ƒf�[ƒ^--------------------------------------------------------------
+                        // �sƒJƒEƒ“ƒgŽæ“¾
                         iLineCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.LineCount].Value);
 
                         // �V‹K“o˜^‚Ì‹ÆŽÒ�¿‹�–¾�×ƒf�[ƒ^‚Å�s”Ô�†‚ª0‚È‚Ì‚Å�Å‘å�s”Ô�†‚ð�Ý’è‚·‚é
@@ -4219,10 +4983,8 @@
                             iLineCount = iLineMax;
                         }
 
-                        strBdDWhere = IoBdD.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value),
-                                                                    TargetDate,
-                                                                    CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value),
-                                                                    iLineCount);
+                        // ‹ÆŽÒ�¿‹�–¾�×ƒf�[ƒ^--------------------------------------------------------------
+                        strBdDWhere = IoBdD.CreatePrimarykeyString(NowCompanyCode, TargetDate, NowSeqNo, iLineCount);
 
                         // ƒf�[ƒ^Šm”F
                         BdDList.Clear();
@@ -4231,18 +4993,27 @@
                             throw new Exception("‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�F“o˜^Šm”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
                         }
 
-
+                        string strOverComment = "�yŽx•¥‹àŠz’´‰ß�z";
                         // Žx•¥‹àŠz’´‰ßƒ`ƒFƒbƒN
                         if (!ClsChangeLedgerData.OverExecAmount(CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value),
                                                                 CommonMotions.cnvInt(r.Cells[(int)DispColumn.ConstructionLedgerLineNo].Value),
                                                                 CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value),
-                                                                CommonMotions.cnvDate(m_Select_TargetDate),
-                                                                CommonMotions.cnvInt(r.Cells[m_Company_Column].Value)))
+                                                                m_Select_TargetDate,
+                                                                NowCompanyCode))
                         {
-                            string strOverComment = "�yŽx•¥‹àŠz’´‰ß�z";
-                            if (CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value).IndexOf(strOverComment) >= 0) strOverComment = string.Empty;
+                            if (CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value).IndexOf(strOverComment) >= 0)
+                            {
+                                strOverComment = string.Empty;
+                            }
                             r.Cells[(int)DispColumn.Bikou].Value = strOverComment + CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value);
                         }
+                        else
+                        {
+                            if (CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value).IndexOf(strOverComment) >= 0)
+                            {
+                                r.Cells[(int)DispColumn.Bikou].Value = r.Cells[(int)DispColumn.Bikou].Value.ToString().Replace(strOverComment, "");
+                            }
+                        }
 
                         // ƒf�[ƒ^ƒZƒbƒg
                         BdDWork = new BillingDataDetail();
@@ -4249,8 +5020,10 @@
                         BdDWork.ConstructionCode = CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value);
                         BdDWork.ConstructionRowCnt = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ConstructionLedgerLineNo].Value);
                         BdDWork.ConstructionColCnt = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ConstructionLedgerColNo].Value);
+
                         string sName = CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].Value);
                         BdDWork.FieldName = sName != "" ? sName : CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].ToolTipText);
+
                         BdDWork.BillPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuSeikyu].Value);
                         BdDWork.HighwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKosoku].Value);
                         BdDWork.HardwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKanamono].Value);
@@ -4259,9 +5032,9 @@
                         if (BdDList.Count == 0)
                         {
                             // �V‹K�i‹Æ–±�¿‹�–¾�×ƒf�[ƒ^�j
-                            BdDWork.CompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                            BdDWork.CompanyCode = NowCompanyCode;
                             BdDWork.TargetDate = TargetDate;
-                            BdDWork.SeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                            BdDWork.SeqNo = NowSeqNo;
                             BdDWork.LineCount = iLineCount;
 
                             BdDList.Clear();
@@ -4298,14 +5071,11 @@
                             || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) != 0
                             || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) != 0
                             || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value) != -1)
-                            || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray
-                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value) != 0)
+                            || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray)
+                            //|| CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value) != 0)
                         {
 
-                            strPdDWhere = IoPdD.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value),
-                                                                        TargetDate,
-                                                                        CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value),
-                                                                        iLineCount);
+                            strPdDWhere = IoPdD.CreatePrimarykeyString(NowCompanyCode, TargetDate, NowSeqNo, iLineCount);
                             // ƒf�[ƒ^Šm”F
                             PdDList.Clear();
                             if (!IoPdD.SelectAction(strPdDWhere, ref PdDList, false))
@@ -4324,13 +5094,14 @@
                             PdDWork.IndsWasteTax = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSannhaiZei].Value);
                             PdDWork.CnstrPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KyoryokuKin].Value);
                             PdDWork.CnstrPriceExist = CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value);
+                            //PdDWork.ApprovalPersonCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value);
 
                             if (PdDList.Count == 0)
                             {
                                 // �V‹K�iŽx•¥–¾�×ƒf�[ƒ^�j
-                                PdDWork.CompanyCode = iCompanyCode;
+                                PdDWork.CompanyCode = NowCompanyCode;
                                 PdDWork.TargetDate = TargetDate;
-                                PdDWork.SeqNo = iSeqNo;
+                                PdDWork.SeqNo = NowSeqNo;
                                 PdDWork.LineCount = iLineCount;
 
                                 // ’S“–�³”F
@@ -4348,7 +5119,6 @@
                                 }
                                 else
                                 {
-                                    PdDWork.ApprovalPersonCode = 0;
                                     PdDWork.ApprovalDate = DateTime.MinValue;
                                 }
                                 PdDWork.ApprovalEndFlg = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ApprovalEndFlg].Value); // �Å�I�³”F”»’è•K—v
@@ -4381,7 +5151,6 @@
                                 }
                                 else
                                 {
-                                    PdDWork.ApprovalPersonCode = 0;
                                     PdDWork.ApprovalDate = DateTime.MinValue;
                                 }
                                 PdDWork.ApprovalEndFlg = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ApprovalEndFlg].Value); //�Å�I�³”F
@@ -4400,10 +5169,11 @@
                                 }
 
                             }
-                            // �HŽ–�Ú�×‘ä’ ‚ÌŽx•¥‹àŠz‚ÌˆêŠ‡“o˜^ƒŠƒXƒg‚Ö’Ç‰Á�i�s’PˆÊ‚Å’Ç‰Á�j
+
+                            // ----- �HŽ–�Ú�×‘ä’ ‚ÌŽx•¥‹àŠz‚ÌˆêŠ‡“o˜^ƒŠƒXƒg‚Ö’Ç‰Á�i�s’PˆÊ‚Å’Ç‰Á�j
                             ConstructionLedgerExcute CleEntry = new ConstructionLedgerExcute();
                             CleEntry.ConstructionCode = CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value);
-                            CleEntry.GroupCount = 2;
+                            CleEntry.GroupCount = (int)FrmConstructionLedger.DataGroup.ConstructionCosts;
                             CleEntry.LineCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ConstructionLedgerLineNo].Value);
                             CleEntry.ColumnCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ConstructionLedgerColNo].Value);
                             CleEntry.PaymentAmount = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSeikyu].Value);
@@ -4413,131 +5183,11 @@
                             CleEntryList.Add(CleEntry);
                         }
 
-                        // Žx•¥�³”F�î•ñƒf�[ƒ^-----------------------------------------------------------------
-                        string tantoDate = CommonMotions.cnvString(r.Cells[(int)DispColumn.TantoDate].Value);
-                        if ((r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray)
-                        || (tantoDate != "" && r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor == Color.Gray))
-                        {
-                            // ‹ÆŽÒ�¿‹�Žx•¥ƒTƒ}ƒŠ�[ƒf�[ƒ^‘€�ì
-                            bMakeBpsData = true;
-
-                            for (int iShoninColumn = (int)DispColumn.Shonin1Code; iShoninColumn < (int)DispColumn.Bikou; iShoninColumn += s_ShoninBlockCnt)
-                            {
-                                // �Ý’è‚³‚ê‚Ä‚¢‚È‚¢�³”F—“‚Í–³Ž‹
-                                if (CommonMotions.cnvInt(r.Cells[iShoninColumn + 4].Value) == 0)
-                                    continue;
-
-                                // ƒf�[ƒ^Šm”F
-                                strPaIWhere = IoPaI.CreatePrimarykeyString(iCompanyCode, m_Select_TargetDate, iSeqNo, iLineCount, CommonMotions.cnvInt(r.Cells[iShoninColumn + 4].Value));
-                                PaIList.Clear();
-                                if (!IoPaI.SelectAction(strPaIWhere, ref PaIList, false))
-                                {
-                                    throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F“o˜^Šm”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                }
-
-                                PaIWork = new PaymentApprovalInfo();
-                                // �V‹K�iŽx•¥�³”F�î•ñƒf�[ƒ^�j
-                                if (PaIList.Count == 0)
-                                {
-                                    PaIWork.CompanyCode = iCompanyCode;
-                                    PaIWork.TargetDate = TargetDate;
-                                    PaIWork.SeqNo = iSeqNo;
-                                    PaIWork.LineCount = iLineCount;
-                                    PaIWork.ApprovalNo = CommonMotions.cnvInt(r.Cells[iShoninColumn + s_ShoninNoCnt].Value);
-                                    PaIWork.ApprovalPerson = CommonMotions.cnvInt(r.Cells[iShoninColumn].Value);
-                                    PaIWork.ApprovalPersonName = CommonMotions.cnvString(r.Cells[iShoninColumn + s_ShoninPersonNameCnt].Value);
-                                    PaIWork.ApprovalAuthority = CommonMotions.cnvInt(r.Cells[iShoninColumn + s_ShoninAuthorityCnt].Value);
-
-                                    if (r.Cells[iShoninColumn + 1].Style.ForeColor != Color.Gray)
-                                    {
-                                        PaIWork.ApprovalDate = DateTime.Now.Date;
-                                    }
-                                    else
-                                    {
-                                        PaIWork.ApprovalDate = DateTime.MinValue;
-                                    }
-
-                                    PaIList.Clear();
-                                    PaIList.Add(PaIWork);
-
-                                    if (!IoPaI.InsertAction(PaIList, false))
-                                    {
-                                        throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F’Ç‰Á�X�V‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                    }
-
-                                    // ƒOƒŠƒbƒh–¾�×ƒf�[ƒ^–ˆ‚Ì’S“–�³”F�”‰ÁŽZ
-                                    iTantoShoninCount += 1;
-                                }
-                                else
-                                {
-                                    // ’S“–ŽÒON�@�¨�@’S“–ŽÒOFF‚Íƒf�[ƒ^‚ð�Á‚·•K—v‚ª‚ ‚é
-                                    if (tantoDate != "" && r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor == Color.Gray)
-                                    {
-                                        // ‹ÆŽÒ�¿‹�Žx•¥ƒTƒ}ƒŠ�[ƒf�[ƒ^�í�œŒó•â
-                                        bDeleteBpsData = true;
-
-                                        // ƒ�ƒbƒN
-                                        if (!IoPaI.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, PaIList[0].ApprovalNo, false))
-                                        {
-                                            throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
-                                        }
-
-                                        // ƒf�[ƒ^�X�V
-                                        wrkArray.Clear();
-                                        if (IoBd.ExecuteReader(strBdWhere, ref wrkArray, false))
-                                        {
-                                            if (!IoPaI.DeleteAction(strPaIWhere, false))
-                                            {
-                                                throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F�í�œ�X�V‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                            }
-                                        }
-                                    }
-                                    else
-                                    {
-                                        PaIWork.ApprovalPerson = CommonMotions.cnvInt(r.Cells[iShoninColumn].Value);
-                                        PaIWork.ApprovalPersonName = CommonMotions.cnvString(r.Cells[iShoninColumn + 1].Value);
-                                        PaIWork.ApprovalAuthority = CommonMotions.cnvInt(r.Cells[iShoninColumn + 3].Value);
-
-                                        if (r.Cells[iShoninColumn + 1].Style.ForeColor != Color.Gray)
-                                        {
-                                            DateTime dtDate = CommonMotions.cnvDate(r.Cells[iShoninColumn + 2].Value);
-                                            string sDate = dtDate.ToString("yyyy/MM/dd");
-                                            if (sDate.Equals(DateTime.MinValue.ToShortDateString()) && sDate.Equals("2001/01/01"))
-                                            {
-                                                PaIWork.ApprovalDate = CommonMotions.cnvDate(sDate);
-                                            }
-                                            else
-                                            {
-                                                PaIWork.ApprovalDate = DateTime.Now.Date;
-                                            }
-                                        }
-                                        else
-                                        {
-                                            PaIWork.ApprovalDate = DateTime.MinValue;
-                                        }
-
-                                        // ƒ�ƒbƒN
-                                        if (!IoPaI.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, PaIList[0].ApprovalNo, false))
-                                        {
-                                            throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F‘¼‚Ìƒ†�[ƒU‚Å•Ò�W’†‚Ì‚½‚ß�A�ˆ—�‚Å‚«‚Ü‚¹‚ñ�B");
-                                        }
-
-                                        // ƒf�[ƒ^�X�V
-                                        if (!IoPaI.UpdateAction(strPaIWhere, PaIWork, false))
-                                        {
-                                            throw new Exception("Žx•¥�³”F�î•ñƒf�[ƒ^�F�X�V‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B");
-                                        }
-
-                                        // ƒOƒŠƒbƒh–¾�×ƒf�[ƒ^–ˆ‚Ì’S“–�³”F�”‰ÁŽZ
-                                        iTantoShoninCount += 1;
-
-                                    }
-                                }
-                            }
-                        }
+                        DataProgressBar.Value++;
+                        DataProgressBar.Update();
                     }
 
-                    // �X�V�i‹Æ–±�¿‹�ƒf�[ƒ^�j
+                    // �X�V�i‹Æ–±�¿‹�ƒf�[ƒ^�j�ã‹Lƒ‹�[ƒv‚Ì�ÅŒã1Œ�
                     if (bBdData == true)
                     {
                         int lSoumuBillGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
@@ -4561,6 +5211,9 @@
                         }
                     }
 
+                    DataProgressBar.Value++;
+                    DataProgressBar.Update();
+
                     // ‹ÆŽÒ�¿‹�Žx•¥ƒTƒ}ƒŠ�[ƒf�[ƒ^
                     if (bMakeBpsData == true)
                     {
@@ -4573,6 +5226,8 @@
                                                         , BpsWork
                                                         , strBpsWhere);
                     }
+                    DataProgressBar.Value++;
+                    DataProgressBar.Update();
 
                     // �HŽ–�Ú�×‘ä’ Žx•¥‚¢ƒf�[ƒ^ˆêŠ‡“o˜^
                     if (CleEntryList.Count > 0)
@@ -4579,11 +5234,7 @@
                     {
                         if (!ClsChangeLedgerData.EntryExecuteData(CleEntryList))
                         {
-                            IoBd.rollback();
-                            IoBdD.rollback();
-                            IoPdD.rollback();
-                            IoPaI.rollback();
-                            IoBps.rollback();
+                            DataEntryRollBack(IoBd, IoBdD, IoPdD, IoPaI, IoBps);
                             MessageBox.Show("�HŽ–�Ú�×‘ä’ Žx•¥‚¢ƒf�[ƒ^ˆêŠ‡“o˜^", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                             return false;
                         }
@@ -4591,16 +5242,11 @@
                 }
                 catch (Exception ex)
                 {
-                    IoBd.rollback();
-                    IoBdD.rollback();
-                    IoPdD.rollback();
-                    IoPaI.rollback();
-                    IoBps.rollback();
+                    DataEntryRollBack(IoBd, IoBdD, IoPdD, IoPaI, IoBps);
                     MessageBox.Show(ex.Message, "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return false;
                 }
 
-
                 IoBd.commit();
                 IoBdD.commit();
                 IoPdD.commit();
@@ -4607,25 +5253,33 @@
                 IoPaI.commit();
                 IoBps.commit();
 
+                m_bChengeAns = false;
+
                 return true;
             }
             catch (System.Exception ex)
             {
+                DataEntryRollBack(IoBd, IoBdD, IoPdD, IoPaI, IoBps);
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
             finally
             {
-                IoBd.close();
-                IoBd = null;
-                IoBdD.close();
-                IoBdD = null;
-                IoPdD.close();
-                IoPdD = null;
-                IoPaI.close();
-                IoPaI = null;
-                IoBps.close();
-                IoBps = null;
+                IoBd.close(); IoBd = null;
+                IoBdD.close(); IoBdD = null;
+                IoPdD.close(); IoPdD = null;
+                IoPaI.close(); IoPaI = null;
+                IoBps.close(); IoBps = null;
+
+                // ProgressBar‚Ì’l‚ð•Ï�X‚·‚é
+                DataProgressBar.Value = DataProgressBar.Maximum;
+                DataProgressBar.Update();
+
+                // ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰�Ä“o˜^
+                dgv.CellValueChanged += DataGridView_CellValueChanged;
+
+                // ƒvƒ�ƒOƒŒƒX•\Ž¦�§Œä
+                ProgressBarCtrl(false);
             }
 
         }
@@ -4647,7 +5301,9 @@
                                 IOBillingPaymentSummary IoBps, List<BillingPaymentSummary> BpsList, BillingPaymentSummary BpsWork, string strBpsWhere)
         {
             // ‹ÆŽÒ�¿‹�Žx•¥ƒTƒ}ƒŠ�[ƒf�[ƒ^-----------------------------------------------
-            for (int ChargePKind = 0; ChargePKind < 2; ChargePKind++)
+            for (int ChargePKind = (int)BillingPaymentSummary.ChargePaymentKindDef.Billing
+                    ; ChargePKind <= (int)BillingPaymentSummary.ChargePaymentKindDef.Payment
+                    ; ChargePKind++)
             {
                 strBpsWhere = IoBps.CreatePrimarykeyString(iCompanyCode, m_Select_TargetDate, ChargePKind);
                 BpsList = new List<BillingPaymentSummary>();
@@ -4772,10 +5428,10 @@
             {
 
                 Result = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
-                                                                && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted
                                                                 && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
                                                                 && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == SeqNo)
-                    .Sum(y => CommonMotions.cnvLong(y.Cells[(int)TargetColumn].Value));
+                                                            .Sum(y => CommonMotions.cnvLong(y.Cells[(int)TargetColumn].Value));
 
             }
             catch (System.Exception ex)
@@ -4917,7 +5573,7 @@
                 List<DataGridViewRow> RemovRows = new List<DataGridViewRow>();
                 foreach (DataGridViewRow r in DetailRows)
                 {
-                    if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                    if (cnvRowState(r.Cells[(int)DispColumn.RowState].Value) == DataRowState.Added)
                     {
                         RemovRows.Add(r);
                     }
@@ -5021,7 +5677,7 @@
                 List<DataGridViewRow> RemovRows = new List<DataGridViewRow>();
                 foreach (DataGridViewRow r in DetailRows)
                 {
-                    if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                    if (cnvRowState(r.Cells[(int)DispColumn.RowState].Value) == DataRowState.Added)
                     {
                         RemovRows.Add(r);
                     }
@@ -5051,5 +5707,102 @@
             }
         }
         #endregion
+
+        #region �HŽ–�Ú�×‘ä’ ‹ÆŽÒ‘¶�Ýƒ`ƒFƒbƒN
+        /// <summary>
+        /// �HŽ–�Ú�×‘ä’ ‹ÆŽÒ‘¶�Ýƒ`ƒFƒbƒN
+        /// </summary>
+        private void CheckExistsLedger(int nCompnyCode, int nConstrCode, ref int RowCnt, ref int ColCnt)
+        {
+            IOConstructionLedgerDetail CLDDB = new IOConstructionLedgerDetail();
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                // •\Ž¦‰æ–Ê�ã‚É‹¦—Í‰ïŽÐ‚ª–³‚¢‚©‚ðƒ`ƒFƒbƒN‚·‚é
+                DataGridViewRow[] compRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                    && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted
+                                                                                    && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == nCompnyCode)
+                                                                                .ToArray();
+
+                ArrayList CLDList = new ArrayList();
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("Select");
+                strSQL.Append(" A.ConstructionCode");       // 0
+                strSQL.Append(", A.GroupCount");            // 1
+                strSQL.Append(", A.CompanyCode");           // 2
+                strSQL.Append(", A.LineCount");             // 3
+                strSQL.Append(", B.ConstructionStart");     // 4
+                strSQL.Append(" From constructionledgerdetail AS A");
+                strSQL.Append(", constructionledger AS B");
+                strSQL.AppendFormat(" Where ConstructionCode = {0}", nConstrCode);
+                strSQL.AppendFormat(" And GroupCount = {0}", FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strSQL.AppendFormat(" And CompanyCode = {0}", nCompnyCode);
+                strSQL.Append(" And B.ConstructionCode = A.ConstructionCode");
+                CLDDB.ExecuteReader(strSQL.ToString(), ref CLDList);
+
+                // 1Œ�ˆÈ‰º‚Ì�ê�‡
+                if (CLDList.Count < 2)
+                {
+                    switch (CLDList.Count)
+                    {
+                        case 0:
+                            RowCnt = 0;
+                            ColCnt = 0;
+                            break;
+                        case 1:
+                            object[] objRec = (object[])CLDList[0];
+                            string strYm = CommonMotions.cnvString(cmbTargetMonth.SelectedValue);
+                            int nYYYY = CommonMotions.cnvInt(strYm.Substring(0, strYm.LastIndexOf("/") - 1));
+                            int nMM = CommonMotions.cnvInt(strYm.Substring(strYm.LastIndexOf("/") + 1));
+
+                            RowCnt = CommonMotions.cnvInt(objRec[3]);
+                            ColCnt = ClsChangeLedgerData.CalcTargetMonthToColumn(CommonMotions.cnvDate(objRec[4]), new DateTime(nYYYY, nMM, 1));
+                            break;
+                    }
+                    return;
+                }
+
+                // ----- •¡�”Œ�‚ ‚Á‚½�ê�‡‚Í‘I‘ð‚Ì‚½‚ß‚É‘ä’ ‰æ–Ê‚ð•\Ž¦‚·‚é
+                // ƒJƒŒƒ“ƒg�s‚æ‚è�HŽ–”Ô�†‚ðŽæ“¾‚·‚é
+                GetConstructionCode();
+                if (m_ConstructionCode == 0) return;
+                // �HŽ–�î•ñ‚ðŽæ“¾‚·‚é
+                GetBaseInfoData();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                CLDDB.close(); CLDDB = null;
+            }
+        }
+        #endregion
+
+        #region •\Ž¦�s�”Žæ“¾�ˆ—�
+        /// <summary>
+        /// •\Ž¦�s�”Žæ“¾�ˆ—�
+        /// </summary>
+        /// <returns></returns>
+        private int GetDispRowCount()
+        {
+            try
+            {
+
+                DataGridView dgv = getShowingView();
+
+                // •\Ž¦‰æ–Ê�ã‚É‹¦—Í‰ïŽÐ‚ª–³‚¢‚©‚ðƒ`ƒFƒbƒN‚·‚é
+                return dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == (int)RowVisibleDef.Visible).Count();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 293)
@@ -87,6 +87,7 @@
         {
             try
             {
+
                 // è¡¨ç¤ºã‚¯ãƒªã‚¢
                 ClearDisplay();
                 foreach (DataGridView dgv in m_dispGridControl)
@@ -898,6 +899,10 @@
                     m_label_TabTotal[TargetTab, i].Text = "0";
                 }
 
+                dgv.Columns[(int)DispGridColumn.EntryPrice].HeaderCell.Style.Font =
+                            new Font("ï¼­ï¼³ æ˜Žæœ�", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+                dgv.Columns[(int)DispGridColumn.EntryPriceInTax].HeaderCell.Style.Font =
+                            new Font("ï¼­ï¼³ æ˜Žæœ�", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
                 dgv.Columns[(int)DispGridColumn.SlipNo].HeaderCell.Style.Font =
                             new Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
                 dgv.Columns[(int)DispGridColumn.ApprovalCount1].HeaderCell.Style.Font =
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs	(revision 293)
@@ -19,6 +19,7 @@
 using ProcessManagement.Forms.SubForms;
 using ProcessManagement.Forms.CustomControls;
 using ProcessManagement.Forms.ControlsAction;
+using System.Drawing.Drawing2D;
 //*---------------------------- æ‰¿èª�çµŒè·¯ãƒžã‚¹ã‚¿ãƒ¡ãƒ³ãƒ†ç”»é�¢ ----------------------*
 //  2016/01/08  Ver1.0.0.0      Create Source           
 //
@@ -203,6 +204,9 @@
             // ãƒ•ã‚©ãƒ¼ãƒ ã‚µã‚¤ã‚ºå›ºå®š
             this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
 
+            // çŸ¢å�°è¡¨ç¤º
+            DrowArrowLine();
+
             // ãƒ˜ãƒƒãƒ€ãƒ¼ã‚»ãƒƒãƒˆ
             SetHeaderData();
 
@@ -819,5 +823,40 @@
             }
         }
         #endregion
+
+        #region çŸ¢å�°è¡¨ç¤º
+        /// <summary>
+        /// çŸ¢å�°è¡¨ç¤º
+        /// </summary>
+        private void DrowArrowLine()
+        {
+            try
+            {
+                //æ��ç”»å…ˆã�¨ã�™ã‚‹Imageã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã‚’ä½œæˆ�ã�™ã‚‹
+                Bitmap canvas = new Bitmap(pictureBox1.Width, pictureBox1.Height);
+                //Imageã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã�®Graphicsã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã‚’ä½œæˆ�ã�™ã‚‹
+                Graphics g = Graphics.FromImage(canvas);
+
+                //Penã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã�®ä½œæˆ�(å¹…20ã�®é»„é‡‘è‰²)
+                Pen blackPen = new Pen(Color.Gold, 20);
+
+                //çµ‚ç‚¹ã�«çŸ¢å�°ã‚’ã�¤ã�‘ã‚‹
+                blackPen.StartCap = LineCap.ArrowAnchor;
+                //ç·šã‚’æ��ç”»
+                g.DrawLine(blackPen, 25, 0, 25, 180);
+
+                //ãƒªã‚½ãƒ¼ã‚¹ã‚’è§£æ”¾ã�™ã‚‹
+                blackPen.Dispose();
+                g.Dispose();
+
+                //PictureBox1ã�«è¡¨ç¤ºã�™ã‚‹
+                pictureBox1.Image = canvas;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs	(revision 293)
@@ -60,6 +60,7 @@
             this.MasterColumn04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.MasterColumn05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dgvGridData = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.label3 = new System.Windows.Forms.Label();
             this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -66,9 +67,13 @@
             this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column06 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.pictureBox1 = new System.Windows.Forms.PictureBox();
             this.panel2.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvGridData)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
             this.SuspendLayout();
             // 
             // btnDataEntry
@@ -76,7 +81,7 @@
             this.btnDataEntry.BackColor = System.Drawing.Color.Green;
             this.btnDataEntry.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataEntry.ForeColor = System.Drawing.Color.White;
-            this.btnDataEntry.Location = new System.Drawing.Point(386, 602);
+            this.btnDataEntry.Location = new System.Drawing.Point(526, 610);
             this.btnDataEntry.Name = "btnDataEntry";
             this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
             this.btnDataEntry.TabIndex = 10;
@@ -90,7 +95,7 @@
             this.btnEnd.BackColor = System.Drawing.Color.Blue;
             this.btnEnd.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnEnd.ForeColor = System.Drawing.Color.White;
-            this.btnEnd.Location = new System.Drawing.Point(638, 602);
+            this.btnEnd.Location = new System.Drawing.Point(778, 610);
             this.btnEnd.Name = "btnEnd";
             this.btnEnd.Size = new System.Drawing.Size(120, 30);
             this.btnEnd.TabIndex = 12;
@@ -105,7 +110,7 @@
             this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label1.ForeColor = System.Drawing.Color.Black;
-            this.label1.Location = new System.Drawing.Point(155, 10);
+            this.label1.Location = new System.Drawing.Point(200, 10);
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(500, 20);
             this.label1.TabIndex = 5;
@@ -117,7 +122,7 @@
             this.btnDataDelete.BackColor = System.Drawing.Color.Red;
             this.btnDataDelete.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataDelete.ForeColor = System.Drawing.Color.White;
-            this.btnDataDelete.Location = new System.Drawing.Point(512, 602);
+            this.btnDataDelete.Location = new System.Drawing.Point(652, 610);
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 11;
@@ -141,7 +146,7 @@
             // btnDispDown
             // 
             this.btnDispDown.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispDown.Location = new System.Drawing.Point(762, 201);
+            this.btnDispDown.Location = new System.Drawing.Point(858, 225);
             this.btnDispDown.Name = "btnDispDown";
             this.btnDispDown.Size = new System.Drawing.Size(40, 40);
             this.btnDispDown.TabIndex = 16;
@@ -153,7 +158,7 @@
             // btnDispUp
             // 
             this.btnDispUp.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispUp.Location = new System.Drawing.Point(762, 153);
+            this.btnDispUp.Location = new System.Drawing.Point(858, 177);
             this.btnDispUp.Name = "btnDispUp";
             this.btnDispUp.Size = new System.Drawing.Size(40, 40);
             this.btnDispUp.TabIndex = 15;
@@ -171,9 +176,9 @@
             this.panel2.Controls.Add(this.label2);
             this.panel2.Controls.Add(this.label12);
             this.panel2.ForeColor = System.Drawing.Color.White;
-            this.panel2.Location = new System.Drawing.Point(8, 40);
+            this.panel2.Location = new System.Drawing.Point(35, 40);
             this.panel2.Name = "panel2";
-            this.panel2.Size = new System.Drawing.Size(794, 40);
+            this.panel2.Size = new System.Drawing.Size(830, 40);
             this.panel2.TabIndex = 24;
             // 
             // lblDepartmentName
@@ -180,9 +185,9 @@
             // 
             this.lblDepartmentName.BackColor = System.Drawing.Color.White;
             this.lblDepartmentName.ForeColor = System.Drawing.Color.Black;
-            this.lblDepartmentName.Location = new System.Drawing.Point(518, 6);
+            this.lblDepartmentName.Location = new System.Drawing.Point(538, 6);
             this.lblDepartmentName.Name = "lblDepartmentName";
-            this.lblDepartmentName.Size = new System.Drawing.Size(260, 24);
+            this.lblDepartmentName.Size = new System.Drawing.Size(280, 24);
             this.lblDepartmentName.TabIndex = 27;
             this.lblDepartmentName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
@@ -192,7 +197,7 @@
             this.lblApprovalName.ForeColor = System.Drawing.Color.Black;
             this.lblApprovalName.Location = new System.Drawing.Point(124, 6);
             this.lblApprovalName.Name = "lblApprovalName";
-            this.lblApprovalName.Size = new System.Drawing.Size(260, 24);
+            this.lblApprovalName.Size = new System.Drawing.Size(280, 24);
             this.lblApprovalName.TabIndex = 26;
             this.lblApprovalName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
@@ -201,7 +206,7 @@
             this.label2.BackColor = System.Drawing.Color.White;
             this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label2.ForeColor = System.Drawing.Color.Black;
-            this.label2.Location = new System.Drawing.Point(400, 6);
+            this.label2.Location = new System.Drawing.Point(420, 6);
             this.label2.Name = "label2";
             this.label2.Size = new System.Drawing.Size(110, 24);
             this.label2.TabIndex = 23;
@@ -212,7 +217,7 @@
             // 
             this.btnDataSelect.BackColor = System.Drawing.Color.White;
             this.btnDataSelect.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataSelect.Location = new System.Drawing.Point(305, 306);
+            this.btnDataSelect.Location = new System.Drawing.Point(350, 322);
             this.btnDataSelect.Name = "btnDataSelect";
             this.btnDataSelect.Size = new System.Drawing.Size(200, 33);
             this.btnDataSelect.TabIndex = 15;
@@ -226,7 +231,7 @@
             // 
             this.btnDataUnSelect.BackColor = System.Drawing.Color.White;
             this.btnDataUnSelect.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataUnSelect.Location = new System.Drawing.Point(305, 347);
+            this.btnDataUnSelect.Location = new System.Drawing.Point(350, 363);
             this.btnDataUnSelect.Name = "btnDataUnSelect";
             this.btnDataUnSelect.Size = new System.Drawing.Size(200, 33);
             this.btnDataUnSelect.TabIndex = 15;
@@ -259,7 +264,7 @@
             this.MasterColumn03,
             this.MasterColumn04,
             this.MasterColumn05});
-            this.dgvMaster.Location = new System.Drawing.Point(8, 396);
+            this.dgvMaster.Location = new System.Drawing.Point(56, 404);
             this.dgvMaster.Name = "dgvMaster";
             this.dgvMaster.RowHeadersVisible = false;
             this.dgvMaster.RowHeadersWidth = 20;
@@ -353,7 +358,7 @@
             this.Column04,
             this.Column05,
             this.Column06});
-            this.dgvGridData.Location = new System.Drawing.Point(8, 96);
+            this.dgvGridData.Location = new System.Drawing.Point(56, 120);
             this.dgvGridData.Name = "dgvGridData";
             this.dgvGridData.RowHeadersVisible = false;
             this.dgvGridData.RowHeadersWidth = 20;
@@ -361,11 +366,21 @@
             this.dgvGridData.RowTemplate.Height = 21;
             this.dgvGridData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
             this.dgvGridData.ShowCellToolTips = false;
-            this.dgvGridData.Size = new System.Drawing.Size(750, 194);
+            this.dgvGridData.Size = new System.Drawing.Size(800, 194);
             this.dgvGridData.TabIndex = 25;
             this.dgvGridData.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvGridData_CellDoubleClick);
             this.dgvGridData.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvGridData_CellValueChanged);
             // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.ForeColor = System.Drawing.Color.White;
+            this.label3.Location = new System.Drawing.Point(0, 96);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(59, 16);
+            this.label3.TabIndex = 26;
+            this.label3.Text = "æ‰¿èª�é †";
+            // 
             // Column01
             // 
             dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
@@ -421,7 +436,7 @@
             this.Column05.ReadOnly = true;
             this.Column05.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column05.Width = 150;
+            this.Column05.Width = 200;
             // 
             // Column06
             // 
@@ -430,12 +445,46 @@
             this.Column06.Name = "Column06";
             this.Column06.Width = 50;
             // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.White;
+            this.label4.Location = new System.Drawing.Point(14, 120);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(30, 19);
+            this.label4.TabIndex = 26;
+            this.label4.Text = "å¾Œ";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.White;
+            this.label5.Location = new System.Drawing.Point(14, 330);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(30, 19);
+            this.label5.TabIndex = 26;
+            this.label5.Text = "å‰�";
+            // 
+            // pictureBox1
+            // 
+            this.pictureBox1.Location = new System.Drawing.Point(4, 147);
+            this.pictureBox1.Name = "pictureBox1";
+            this.pictureBox1.Size = new System.Drawing.Size(50, 175);
+            this.pictureBox1.TabIndex = 27;
+            this.pictureBox1.TabStop = false;
+            // 
             // FrmApprovalRoute
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
-            this.ClientSize = new System.Drawing.Size(810, 637);
+            this.ClientSize = new System.Drawing.Size(900, 657);
+            this.Controls.Add(this.pictureBox1);
+            this.Controls.Add(this.label5);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.label3);
             this.Controls.Add(this.dgvMaster);
             this.Controls.Add(this.dgvGridData);
             this.Controls.Add(this.panel2);
@@ -460,7 +509,9 @@
             this.panel2.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvGridData)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
             this.ResumeLayout(false);
+            this.PerformLayout();
 
         }
 
@@ -479,12 +530,6 @@
         private System.Windows.Forms.Button btnDataSelect;
         private System.Windows.Forms.Button btnDataUnSelect;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column04;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column05;
-        private System.Windows.Forms.DataGridViewCheckBoxColumn Column06;
         private System.Windows.Forms.DataGridViewTextBoxColumn MasterColumn01;
         private System.Windows.Forms.DataGridViewTextBoxColumn MasterColumn02;
         private System.Windows.Forms.DataGridViewTextBoxColumn MasterColumn03;
@@ -492,5 +537,15 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn MasterColumn05;
         private System.Windows.Forms.Label lblDepartmentName;
         private System.Windows.Forms.Label lblApprovalName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column04;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column05;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column06;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.PictureBox pictureBox1;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs	(revision 293)
@@ -234,7 +234,7 @@
             this.dgvProcess.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.dgvProcess.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvProcess.BackgroundColor = System.Drawing.Color.White;
             this.dgvProcess.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.BottomCenter;
             dataGridViewCellStyle1.BackColor = System.Drawing.Color.White;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 293)
@@ -119,7 +119,7 @@
             // label1
             // 
             this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label1.BackColor = System.Drawing.Color.Red;
             this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label1.ForeColor = System.Drawing.Color.Black;
@@ -162,7 +162,7 @@
             // label2
             // 
             this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label2.BackColor = System.Drawing.Color.Pink;
             this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label2.ForeColor = System.Drawing.Color.Black;
             this.label2.Location = new System.Drawing.Point(3, 3);
@@ -240,7 +240,7 @@
             // label3
             // 
             this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label3.BackColor = System.Drawing.Color.Pink;
             this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label3.ForeColor = System.Drawing.Color.Black;
             this.label3.Location = new System.Drawing.Point(3, 33);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.Designer.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.Designer.cs	(revision 293)
@@ -79,9 +79,9 @@
             this.label63.BackColor = System.Drawing.Color.Gold;
             this.label63.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label63.ForeColor = System.Drawing.Color.Black;
-            this.label63.Location = new System.Drawing.Point(-58, 56);
+            this.label63.Location = new System.Drawing.Point(-58, 62);
             this.label63.Name = "label63";
-            this.label63.Size = new System.Drawing.Size(0, 25);
+            this.label63.Size = new System.Drawing.Size(8, 25);
             this.label63.TabIndex = 46;
             this.label63.Text = "ç”³è«‹çŠ¶æ³�";
             this.label63.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -186,7 +186,7 @@
             this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 16F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.Black;
-            this.ClientSize = new System.Drawing.Size(526, 186);
+            this.ClientSize = new System.Drawing.Size(530, 194);
             this.ControlBox = false;
             this.Controls.Add(this.label63);
             this.Controls.Add(this.dgvDispApproval);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 293)
@@ -1650,6 +1650,7 @@
 
                 // èµ·å‹•ãƒ‡ãƒ¼ã‚¿å�–å¾—
                 List<ProcessExcute> exeList = CommonMotions.LoginUserProcExe;
+                exeList.Clear();
                 string strExe = execDB.CreatePrimarykeyString(CommonMotions.LoginUserData.SecCode) + " ORDER BY EXECCODE";
                 execDB.SelectAction(strExe, ref exeList);
 
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 292)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 293)
@@ -32,7 +32,7 @@
 // ã�™ã�¹ã�¦ã�®å€¤ã‚’æŒ‡å®šã�™ã‚‹ã�‹ã€�ä¸‹ã�®ã‚ˆã�†ã�« '*' ã‚’ä½¿ã�£ã�¦ãƒ“ãƒ«ãƒ‰ã�Šã‚ˆã�³ãƒªãƒ“ã‚¸ãƒ§ãƒ³ç•ªå�·ã‚’ 
 // æ—¢å®šå€¤ã�«ã�™ã‚‹ã�“ã�¨ã�Œã�§ã��ã�¾ã�™:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.1.2")]
-[assembly: AssemblyFileVersion("1.0.1.2")]
+[assembly: AssemblyVersion("1.0.1.3")]
+[assembly: AssemblyFileVersion("1.0.1.3")]
 // Log4netã‚’ä½¿ç”¨ã�™ã‚‹
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
