Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 237)
@@ -2084,11 +2084,15 @@
         /// <returns></returns>
         public static string ComentSucstring(string Mijiretu, string Delimiter)
         {
+            string strRet = Mijiretu;
             try
             {
-                if (Mijiretu.IndexOf(Delimiter) < 0) return Mijiretu;
 
-                string strRet = Mijiretu.Substring(0, Mijiretu.IndexOf(Delimiter) - 1);
+                if (Mijiretu.IndexOf(Delimiter) < 0) return strRet;
+                int TargetCnt = Mijiretu.IndexOf(Delimiter) - 1;
+
+                if (TargetCnt>0)
+                    strRet = Mijiretu.Substring(0, TargetCnt);
                 
                 return strRet;
             }
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 237)
@@ -14,7 +14,7 @@
         /// <summary>
         /// æœ¬ä½“ãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
         /// </summary>
-        public static int s_SystemVersion = 56;
+        public static int s_SystemVersion = 57;
 
         /// <summary>
         /// ã‚³ãƒ”ãƒ¼ãƒ»ç’°å¢ƒãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 237)
@@ -87,6 +87,7 @@
             PurchaseStatusInput = 40,           // 40:æ³¨æ–‡æ›¸çŠ¶æ³�å…¥åŠ›
             ReqBillingStatus = 41,              // 41:è«‹æ±‚æ›¸ç™ºçµ¦ä¸€è¦§
             ReqBillingStatInput = 42,           // 42:è«‹æ±‚æ›¸çŠ¶æ³�å…¥åŠ›
+            SafetyPatrol = 43,                  // 43:å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
         }
         #endregion
 
@@ -109,7 +110,7 @@
             BusinessType = 111,                 // 111:æ³•äººæ ¼ãƒžã‚¹ã‚¿
             //Division = 112,                   // 112:åŒºåˆ†ãƒžã‚¹ã‚¿
             //Expenses = 113,                   // 113:çµŒè²»çŽ‡ãƒžã‚¹ã‚¿
-            SubContractorItem = 114,            // 114:å�”åŠ›ä¼šç¤¾å·¥ç¨®ãƒžã‚¹ã‚¿
+            SubContrItem = 114,                 // 114:å�”åŠ›ä¼šç¤¾å·¥ç¨®ãƒžã‚¹ã‚¿
             Calender = 115,                     // 115:ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒžã‚¹ã‚¿
             VehicleMaster = 116,                // 116:è»Šä¸¡ãƒžã‚¹ã‚¿
             TermMaster = 117,                   // 117:æœŸé™�ãƒžã‚¹ã‚¿
@@ -118,10 +119,10 @@
             ConstructionType = 120,             // 120:å·¥äº‹ç¨®åˆ¥ãƒžã‚¹ã‚¿
             AlwaysEmployment = 121,             // 121:å¸¸é›‡è€…ãƒžã‚¹ã‚¿
             Suppliers = 122,                    // 122:ä»•å…¥å…ˆãƒžã‚¹ã‚¿
-            SubContractorJobCategory = 123,     // 123:å�”åŠ›ä¼šç¤¾è�·ç¨®ãƒžã‚¹ã‚¿
+            SubContrJobCat = 123,               // 123:å�”åŠ›ä¼šç¤¾è�·ç¨®ãƒžã‚¹ã‚¿
             Security = 124,                     // 124:ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£åŒºåˆ†ãƒžã‚¹ã‚¿
             OrderDivision = 125,                // 125:ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
-            ConstructionExpenses = 126,         // 126:æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
+            ConstrExpenses = 126,               // 126:æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
             MaterialKind = 127,                 // 127:è³‡æ��ç¨®é¡žãƒžã‚¹ã‚¿
             MaterialItem = 128,                 // 128:è³‡æ��å“�ç›®ãƒžã‚¹ã‚¿
             SalesConfirm = 129,                 // 129:å£²ä¸Šç¢ºèª�
@@ -194,6 +195,8 @@
                                                                                 { (int)ProcessExecuteNo.PurchaseStatusInput,    "æ³¨æ–‡æ›¸çŠ¶æ³�ï¼�å…¥åŠ›"},
                                                                                 { (int)ProcessExecuteNo.ReqBillingStatus,       "è«‹æ±‚æ›¸ç™ºçµ¦ä¸€è¦§ï¼�è¡¨ç¤º"},
                                                                                 { (int)ProcessExecuteNo.ReqBillingStatInput,    "è«‹æ±‚æ›¸çŠ¶æ³�ï¼�å…¥åŠ›"},
+                                                                                { (int)ProcessExecuteNo.SafetyPatrol,           "å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹"},
+
         };
 
         #endregion
@@ -216,7 +219,7 @@
                                                                                 { (int)MaintenanceExecuteNo.BusinessType,               "æ³•äººæ ¼ç™»éŒ²"},                 // 111
                                                                                 //{ (int)MaintenanceExecuteNo.Division,                   "åŒºåˆ†ç™»éŒ²"},                   // 112
                                                                                 //{ (int)MaintenanceExecuteNo.Expenses,                   "çµŒè²»çŽ‡ç™»éŒ²"},                 // 113
-                                                                                { (int)MaintenanceExecuteNo.SubContractorItem,          "å�”åŠ›ä¼šç¤¾å·¥ç¨®ç™»éŒ²"},           // 114
+                                                                                { (int)MaintenanceExecuteNo.SubContrItem,          "å�”åŠ›ä¼šç¤¾å·¥ç¨®ç™»éŒ²"},           // 114
                                                                                 { (int)MaintenanceExecuteNo.Calender,                   "ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ç™»éŒ²"},             // 115
                                                                                 { (int)MaintenanceExecuteNo.VehicleMaster,              "è»Šä¸¡ç™»éŒ²"},                   // 116
                                                                                 { (int)MaintenanceExecuteNo.TermMaster,                 "æœŸé™�ç™»éŒ²"},                   // 117
@@ -225,10 +228,10 @@
                                                                                 { (int)MaintenanceExecuteNo.ConstructionType,           "å·¥äº‹ç¨®åˆ¥ç™»éŒ²"},               // 120
                                                                                 { (int)MaintenanceExecuteNo.AlwaysEmployment,           "å¸¸é›‡è€…ç™»éŒ²"},                 // 121
                                                                                 { (int)MaintenanceExecuteNo.Suppliers,                  "ä»•å…¥å…ˆç™»éŒ²"},                 // 122
-                                                                                { (int)MaintenanceExecuteNo.SubContractorJobCategory,   "å�”åŠ›ä¼šç¤¾è�·ç¨®ç™»éŒ²"},           // 123
+                                                                                { (int)MaintenanceExecuteNo.SubContrJobCat,   "å�”åŠ›ä¼šç¤¾è�·ç¨®ç™»éŒ²"},           // 123
                                                                                 { (int)MaintenanceExecuteNo.Security,                   "ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£åŒºåˆ†ç™»éŒ²"},       // 124
                                                                                 { (int)MaintenanceExecuteNo.OrderDivision,              "ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²"},             // 125
-                                                                                { (int)MaintenanceExecuteNo.ConstructionExpenses,       "æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²"},           // 126
+                                                                                { (int)MaintenanceExecuteNo.ConstrExpenses,       "æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²"},           // 126
                                                                                 { (int)MaintenanceExecuteNo.MaterialKind,               "è³‡æ��ç¨®é¡žç™»éŒ²"},               // 127
                                                                                 { (int)MaintenanceExecuteNo.MaterialItem,               "è³‡æ��å“�ç›®ç™»éŒ²"},               // 128
                                                                                 { (int)MaintenanceExecuteNo.SalesConfirm,               "å£²ä¸Šç¢ºèª�"},                   // 129
@@ -310,6 +313,10 @@
             /// 12:æ¥­è€…æ”¯æ‰•
             /// </summary>
             SubConstrPayment,
+            /// <summary>
+            /// 13:å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«
+            /// </summary>
+            SafetyPatrol,
         }
         #endregion
 
@@ -350,6 +357,7 @@
                                                                                 {10, "å�”åŠ›ä¼šç¤¾ç™»éŒ²æ‰¿èª�"},
                                                                                 {11, "æ‰‹é–“æ”¯æ‰•æ‰¿èª�"},
                                                                                 {12, "æ¥­è€…æ”¯æ‰•æ‰¿èª�"},
+                                                                                {13, "å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ‰¿èª�"},
                                                                                 };
 
         #endregion
@@ -650,95 +658,99 @@
                             ProcessExecuteNo_ReqBillingStatInput(m_ProcControlPara[NowPoint]);
                             break;
 
+                        case (int)ProcessExecuteNo.SafetyPatrol:                         // 43:å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+                            ProcessExecuteNo_SafetyPatrol(m_ProcControlPara[NowPoint]);
+                            break;
+
                         #endregion
 
                         #region ãƒžã‚¹ã‚¿ãƒ¡ãƒ³ãƒ†
                         // ----- ãƒžã‚¹ã‚¿ãƒ¡ãƒ³ãƒ†
-                        case (int)MaintenanceExecuteNo.System:                          //  1:ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†
+                        case (int)MaintenanceExecuteNo.System:                              //  1011:ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†
                             MaintenanceExecuteNo_System(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Department:                      //  2:éƒ¨ç½²ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Department:                          //  1012:éƒ¨ç½²ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_Department(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.PersonInCharge:                  //  3:æ‹…å½“è€…ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.PersonInCharge:                      //  1013:æ‹…å½“è€…ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_PersonInCharge(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Component:                       //  4:å¤§é …ç›®ãƒžã‚¹ã‚¿ï¼ˆæ§‹æˆ�ãƒžã‚¹ã‚¿ï¼‰
+                        case (int)MaintenanceExecuteNo.Component:                           //  1014:å¤§é …ç›®ãƒžã‚¹ã‚¿ï¼ˆæ§‹æˆ�ãƒžã‚¹ã‚¿ï¼‰
                             MaintenanceExecuteNo_Component(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ConstructionItem:                //  5:ä¸­é …ç›®ãƒžã‚¹ã‚¿ï¼ˆå·¥ç¨®ãƒžã‚¹ã‚¿ï¼‰
+                        case (int)MaintenanceExecuteNo.ConstructionItem:                    //  1015:ä¸­é …ç›®ãƒžã‚¹ã‚¿ï¼ˆå·¥ç¨®ãƒžã‚¹ã‚¿ï¼‰
                             MaintenanceExecuteNo_ConstructionItem(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ConstructionWork:                //  6:å°�é …ç›®ãƒžã‚¹ã‚¿ï¼ˆä½œæ¥­ãƒžã‚¹ã‚¿ï¼‰
+                        case (int)MaintenanceExecuteNo.ConstructionWork:                    //  1016:å°�é …ç›®ãƒžã‚¹ã‚¿ï¼ˆä½œæ¥­ãƒžã‚¹ã‚¿ï¼‰
                             MaintenanceExecuteNo_ConstructionWork(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Unit:                            //  7:å�˜ä½�ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Unit:                                //  1017:å�˜ä½�ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_UnitMaster(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.SubContractor:                   //  8:å�”åŠ›ä¼šç¤¾ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.SubContractor:                       //  1018:å�”åŠ›ä¼šç¤¾ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_SubContractor(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Orderers:                        //  9:ç™ºæ³¨è€…ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Orderers:                            //  1019:ç™ºæ³¨è€…ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_Orderers(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.BusinessType:                    // 10:æ³•äººæ ¼ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.BusinessType:                        // 110:æ³•äººæ ¼ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_BusinessType(m_ProcControlPara[NowPoint]);
                             break;
-                        //case (int)MaintenanceExecuteNo.Division:                        // 11:åŒºåˆ†ãƒžã‚¹ã‚¿
+                        //case (int)MaintenanceExecuteNo.Division:                          // 111:åŒºåˆ†ãƒžã‚¹ã‚¿
                         //    MaintenanceExecuteNo_Division(m_ProcControlPara[NowPoint]);
                         //    break;
-                        //case (int)MaintenanceExecuteNo.Expenses:                        // 12:çµŒè²»çŽ‡ãƒžã‚¹ã‚¿
+                        //case (int)MaintenanceExecuteNo.Expenses:                          // 112:çµŒè²»çŽ‡ãƒžã‚¹ã‚¿
                         //    MaintenanceExecuteNo_Expenses(m_ProcControlPara[NowPoint]);
                         //    break;
-                        case (int)MaintenanceExecuteNo.SubContractorItem:               // 13:å�”åŠ›ä¼šç¤¾å·¥ç¨®ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.SubContrItem:                        // 113:å�”åŠ›ä¼šç¤¾å·¥ç¨®ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_SubContractorItem(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Calender:                        // 14:ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Calender:                            // 114:ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_Calender(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.VehicleMaster:                   // 15:è»Šä¸¡ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.VehicleMaster:                       // 115:è»Šä¸¡ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_VehicleMaster(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.TermMaster:                      // 16:æœŸé™�ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.TermMaster:                          // 116:æœŸé™�ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_TermMaster(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.SaleSalesGraphData:              // 17:å£²ä¸Šã‚°ãƒ©ãƒ•ãƒ‡ãƒ¼ã‚¿å…¥åŠ›
+                        case (int)MaintenanceExecuteNo.SaleSalesGraphData:                  // 117:å£²ä¸Šã‚°ãƒ©ãƒ•ãƒ‡ãƒ¼ã‚¿å…¥åŠ›
                             MaintenanceExecuteNo_SalesGraphData(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ApprovalRoute:                   // 18:æ‰¿èª�çµŒè·¯ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.ApprovalRoute:                       // 118:æ‰¿èª�çµŒè·¯ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_ApprovalRoute(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ConstructionType:                // 19:å·¥äº‹ç¨®åˆ¥ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.ConstructionType:                    // 119:å·¥äº‹ç¨®åˆ¥ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_ConstructionType(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ComponentLink:                   // 20:å¤§ãƒ»ä¸­é …ç›®é–¢é€£ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.ComponentLink:                       // 120:å¤§ãƒ»ä¸­é …ç›®é–¢é€£ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_ComponentLink(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.AlwaysEmployment:                // 21:å¸¸é›‡è€…ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.AlwaysEmployment:                    // 121:å¸¸é›‡è€…ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_AlwaysEmployment(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Suppliers:                       // 22:ä»•å…¥å…ˆãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Suppliers:                           // 122:ä»•å…¥å…ˆãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_Suppliers(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.SubContractorJobCategory:        // 23:å�”åŠ›ä¼šç¤¾è�·ç¨®ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.SubContrJobCat:                      // 123:å�”åŠ›ä¼šç¤¾è�·ç¨®ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_SubContractorJobCategory(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Security:                         // 24:ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£åŒºåˆ†ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.Security:                            // 124:ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£åŒºåˆ†ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_Security(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.OrderDivision:                   // 125:ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
+                        case (int)MaintenanceExecuteNo.OrderDivision:                       // 125:ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
                             MaintenanceExecuteNo_OrderDivision(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.ConstructionExpenses:            // 126:æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
+                        case (int)MaintenanceExecuteNo.ConstrExpenses:                      // 126:æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
                             MaintenanceExecuteNo_ConstructionExpenses(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.MaterialKind:                    // 127:è³‡æ��ç¨®é¡žãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.MaterialKind:                        // 127:è³‡æ��ç¨®é¡žãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_MaterialKind(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.MaterialItem:                    // 128:è³‡æ��å“�ç›®ãƒžã‚¹ã‚¿
+                        case (int)MaintenanceExecuteNo.MaterialItem:                        // 128:è³‡æ��å“�ç›®ãƒžã‚¹ã‚¿
                             MaintenanceExecuteNo_MaterialItems(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.SalesConfirm:                    // 129:å£²ä¸Šç¢ºèª�
+                        case (int)MaintenanceExecuteNo.SalesConfirm:                        // 129:å£²ä¸Šç¢ºèª�
                             MaintenanceExecuteNo_SalesConfirm(m_ProcControlPara[NowPoint]);
                             break;
 
@@ -2553,8 +2565,47 @@
         }
         #endregion
 
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+        /// </summary>
+        /// <returns></returns>
+        public static void ProcessExecuteNo_SafetyPatrol(ProcessParameter CurrentPara)
+        {
+            // å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+            FrmSafetyPatrol frm = new FrmSafetyPatrol();
+            try
+            {
+                // è‡ªåˆ†ã�®ãƒ�ãƒ³ãƒ‰ãƒ«ã‚’ãƒªã‚¹ãƒˆã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+
+                // èµ·å‹•ãƒ»ç·¨é›†ãƒ•ãƒ©ã‚°
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg);
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
+                // ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                frm.ConstructionCode = CurrentPara.IntExecParameter[0];
+
+                // ãƒ•ã‚©ãƒ¼ãƒ è¡¨ç¤º
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
         #endregion
 
+        #endregion
+
         #region ãƒžã‚¹ã‚¿ãƒ¡ãƒ³ãƒ†ãƒŠãƒ³ã‚¹
         // ----------------- ãƒ¡ãƒ³ãƒ†ãƒŠãƒ³ã‚¹èµ·å‹•
         #region ç®¡ç�†ãƒžã‚¹ã‚¿
@@ -2919,7 +2970,7 @@
             try
             {
                 // èµ·å‹•ãƒ»ç·¨é›†ãƒ•ãƒ©ã‚°
-                int ProcessNo = (int)MaintenanceExecuteNo.SubContractorItem;
+                int ProcessNo = (int)MaintenanceExecuteNo.SubContrItem;
                 int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
                 if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
                 {
@@ -3264,7 +3315,7 @@
             try
             {
                 // èµ·å‹•ãƒ»ç·¨é›†ãƒ•ãƒ©ã‚°
-                int ProcessNo = (int)MaintenanceExecuteNo.SubContractorJobCategory;
+                int ProcessNo = (int)MaintenanceExecuteNo.SubContrJobCat;
                 int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
                 if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
                 {
@@ -3370,7 +3421,7 @@
             try
             {
                 // èµ·å‹•ãƒ»ç·¨é›†ãƒ•ãƒ©ã‚°
-                int ProcessNo = (int)MaintenanceExecuteNo.ConstructionExpenses;
+                int ProcessNo = (int)MaintenanceExecuteNo.ConstrExpenses;
                 int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
                 if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
                 {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs	(revision 237)
@@ -55,7 +55,7 @@
 
         #endregion
 
-        #region ãƒ‘ãƒ–ãƒªãƒƒã‚¯ãƒ¡ã‚½ãƒƒãƒ‰
+        #region å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢SQLä½œæˆ�
         /// <summary>
         /// å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢
         /// </summary>
@@ -79,6 +79,16 @@
 
             return strcmd.ToString();
         }
+        #endregion
+
+        #region å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢(è¤‡æ•°)
+        /// <summary>
+        /// å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢(è¤‡æ•°)
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref List<DivisionMaster> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
@@ -110,6 +120,16 @@
             }
 
         }
+        #endregion
+
+        #region å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢(1ä»¶)
+        /// <summary>
+        /// å��ç§°ãƒžã‚¹ã‚¿æ¤œç´¢(1ä»¶)
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref DivisionMaster data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
@@ -141,7 +161,9 @@
             }
 
         }
+        #endregion
 
+        #region å��ç§°ãƒžã‚¹ã‚¿è¿½åŠ 
         /// <summary>
         /// å��ç§°ãƒžã‚¹ã‚¿è¿½åŠ 
         /// </summary>
@@ -192,7 +214,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region å��ç§°ãƒžã‚¹ã‚¿æ›´æ–°
         /// <summary>
         /// å��ç§°ãƒžã‚¹ã‚¿æ›´æ–°
         /// </summary>
@@ -228,8 +252,9 @@
                 return false;
             }
         }
+        #endregion
 
-
+        #region å��ç§°ãƒžã‚¹ã‚¿å‰Šé™¤
         /// <summary>
         /// å��ç§°ãƒžã‚¹ã‚¿å‰Šé™¤
         /// </summary>
@@ -254,7 +279,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region å��ç§°ãƒžã‚¹ã‚¿è«–ç�†å‰Šé™¤
         /// <summary>
         /// è«–ç�†å‰Šé™¤
         /// </summary>
@@ -289,6 +316,9 @@
                 return false;
             }
         }
+        #endregion
+
+        #region OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
         /// <summary>
         /// OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
         /// </summary>
@@ -317,11 +347,9 @@
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
-
         #endregion
 
-        #region ãƒ‘ãƒ–ãƒªãƒƒã‚¯ãƒ¡ã‚½ãƒƒãƒ‰ï¼ˆç‰¹æ®Šå‡¦ç�†ï¼‰
-
+        #region åŒºåˆ†åˆ¥ã�®æœ€å¤§å€¤ã‚’å�–å¾—ã�™ã‚‹
         /// <summary>
         /// åŒºåˆ†åˆ¥ã�®æœ€å¤§å€¤ã‚’å�–å¾—ã�™ã‚‹
         /// </summary>
@@ -358,7 +386,9 @@
 
             return iRet;
         }
+        #endregion
 
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// <summary>
         /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// </summary>
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs	(revision 237)
@@ -55,7 +55,7 @@
 
         #endregion
 
-        #region ãƒ‘ãƒ–ãƒªãƒƒã‚¯ãƒ¡ã‚½ãƒƒãƒ‰
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢SQLä½œæˆ�
         /// <summary>
         /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢
         /// </summary>
@@ -64,33 +64,45 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         private string CreateSelectSQL()
         {
-            string strcmd = "SELECT";
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
 
-            strcmd += " DivisionCode";
-            strcmd += " ,NameCode";
-            strcmd += " ,DisplayOrder";
-            strcmd += " ,ExpensesRaito";
-            strcmd += " ,DeleteFlg";
+            strcmd.Append(" DivisionCode");
+            strcmd.Append(" ,NameCode");
+            strcmd.Append(" ,DisplayOrder");
+            strcmd.Append(" ,ExpensesRaito");
+            strcmd.Append(" ,DeleteFlg");
 
-            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " FROM ExpensesMaster";
+            strcmd.Append(" ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM ExpensesMaster");
 
-            return strcmd;
+            return strcmd.ToString();
         }
+        #endregion
+
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢(è¤‡æ•°)
+        /// <summary>
+        /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢(è¤‡æ•°)
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref List<ExpensesMaster> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -104,24 +116,35 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
 
         }
+        #endregion
+
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢(1ä»¶)
+        /// <summary>
+        /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ¤œç´¢(1ä»¶)
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref ExpensesMaster data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
                 if (arData.Count == 0) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
@@ -135,12 +158,14 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
 
         }
+        #endregion
 
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿è¿½åŠ 
         /// <summary>
         /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿è¿½åŠ 
         /// </summary>
@@ -148,37 +173,39 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(List<ExpensesMaster> data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
                 foreach (ExpensesMaster work in data)
                 {
-                    strcmd = "INSERT INTO ExpensesMaster";
+                    strcmd.Append("INSERT INTO ExpensesMaster");
 
-                    strcmd += " VALUES (";
+                    strcmd.Append(" VALUES (");
 
-                    strcmd += string.Format("  {0}", work.DivisionCode.ToString());
-                    strcmd += string.Format(", {0}", work.NameCode.ToString());
-                    strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
-                    strcmd += string.Format(", {0}", work.ExpensesRaito.ToString());
-                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+                    strcmd.AppendFormat("  {0}", work.DivisionCode.ToString());
+                    strcmd.AppendFormat(", {0}", work.NameCode.ToString());
+                    strcmd.AppendFormat(", {0}", work.DisplayOrder.ToString());
+                    strcmd.AppendFormat(", {0}", work.ExpensesRaito.ToString());
+                    strcmd.AppendFormat(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", NOW()";
-                    strcmd += ", NOW()";
-                    strcmd += ")";
+                    strcmd.Append(", NOW()");
+                    strcmd.Append(", NOW()");
+                    strcmd.Append(")");
 
-                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                    if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
                 }
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
+        #endregion
 
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ›´æ–°
         /// <summary>
         /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿æ›´æ–°
         /// </summary>
@@ -187,35 +214,36 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool UpdateAction(string AddSQLString, ExpensesMaster data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "UPDATE ExpensesMaster";
+                strcmd.Append("UPDATE ExpensesMaster");
 
-                strcmd += " SET";
+                strcmd.Append(" SET");
 
-                strcmd += string.Format(" DivisionCode = {0}", data.DivisionCode.ToString());
-                strcmd += string.Format(",NameCode = {0}", data.NameCode.ToString());
-                strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
-                strcmd += string.Format(",ExpensesRaito = {0}", data.ExpensesRaito.ToString());
-                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+                strcmd.AppendFormat(" DivisionCode = {0}", data.DivisionCode.ToString());
+                strcmd.AppendFormat(",NameCode = {0}", data.NameCode.ToString());
+                strcmd.AppendFormat(",DisplayOrder = {0}", data.DisplayOrder.ToString());
+                strcmd.AppendFormat(",ExpensesRaito = {0}", data.ExpensesRaito.ToString());
+                strcmd.AppendFormat(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = NOW()";
-                strcmd += AddSQLString;
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
+        #endregion
 
-
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿å‰Šé™¤
         /// <summary>
         /// çµŒè²»çŽ‡ãƒžã‚¹ã‚¿å‰Šé™¤
         /// </summary>
@@ -225,22 +253,24 @@
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
-                strcmd = string.Format("{0}{1}", "DELETE FROM ExpensesMaster", AddSQLString);
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM ExpensesMaster", AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
+        #endregion
 
+        #region çµŒè²»çŽ‡ãƒžã‚¹ã‚¿è«–ç�†å‰Šé™¤
         /// <summary>
         /// è«–ç�†å‰Šé™¤
         /// </summary>
@@ -275,6 +305,9 @@
                 return false;
             }
         }
+        #endregion
+
+        #region OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
         /// <summary>
         /// OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
         /// </summary>
@@ -303,11 +336,9 @@
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
-
         #endregion
 
-        #region ãƒ‘ãƒ–ãƒªãƒƒã‚¯ãƒ¡ã‚½ãƒƒãƒ‰ï¼ˆç‰¹æ®Šå‡¦ç�†ï¼‰
-
+        #region åŒºåˆ†åˆ¥ã�®æœ€å¤§å€¤ã‚’å�–å¾—ã�™ã‚‹
         /// <summary>
         /// åŒºåˆ†åˆ¥ã�®æœ€å¤§å€¤ã‚’å�–å¾—ã�™ã‚‹
         /// </summary>
@@ -317,16 +348,17 @@
         public int SelectMaxCategoryHistoryCount(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
             int iRet = 0;
             try
             {
                 // SQLä½œæˆ�
-                strcmd = "SELECT IFNULL(MAX(NameCode), 0) FROM ExpensesMaster" + AddSQLString;
+                strcmd.Append("SELECT IFNULL(MAX(NameCode), 0) FROM ExpensesMaster");
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return iRet;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -339,12 +371,14 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
             }
 
             return iRet;
         }
+        #endregion
 
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// <summary>
         /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// </summary>
@@ -352,19 +386,19 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreatePrimarykeyString(int DivisionCode, int NameCode = 0)
         {
-            string strWork = string.Empty;
+            StringBuilder strWork = new StringBuilder();
             try
             {
-                strWork = string.Format(" Where DivisionCode = {0}", DivisionCode);
+                strWork.AppendFormat(" Where DivisionCode = {0}", DivisionCode);
                 if (NameCode != 0)
-                    strWork += string.Format(" And NameCode = {0}", NameCode);
+                    strWork.AppendFormat(" And NameCode = {0}", NameCode);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
         #endregion
     }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs	(revision 237)
@@ -59,14 +59,15 @@
         /// </summary>
         private string CreateSelectSQL()
         {
-            string strcmd = "SELECT";
-            strcmd += " DATE_FORMAT(Holiday, '%Y/%m/%d')";
-            strcmd += ",BusinessYear";
-            strcmd += ",TargetMonth";
-            strcmd += ",TargetDay";
-            strcmd += " FROM HolidayCalenderMaster";
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+            strcmd.Append(" DATE_FORMAT(Holiday, '%Y/%m/%d')");
+            strcmd.Append(",BusinessYear");
+            strcmd.Append(",TargetMonth");
+            strcmd.Append(",TargetDay");
+            strcmd.Append(" FROM HolidayCalenderMaster");
 
-            return strcmd;
+            return strcmd.ToString();
         }
         #endregion
 
@@ -80,16 +81,17 @@
         public bool SelectAction(string AddSQLString, ref List<HolidayCalenderMaster> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -103,7 +105,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
 
@@ -114,16 +116,17 @@
         public bool SelectAction(string AddSQLString, ref HolidayCalenderMaster data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
                 if (arData.Count == 0) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
@@ -137,7 +140,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -151,43 +154,43 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(List<HolidayCalenderMaster> data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
                 bool bColFirst = true;
-                strcmd = "INSERT INTO HolidayCalenderMaster";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO HolidayCalenderMaster");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(NameColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES";
+                strcmd.Append(") VALUES");
 
                 bool bDataFirst = true;
                 foreach (HolidayCalenderMaster work in data)
                 {
-                    if (bDataFirst) strcmd += " (";
-                    else strcmd += ", (";
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
 
-                    strcmd += string.Format(" STR_TO_DATE('{0}','%Y/%m/%d')", work.Holiday.ToShortDateString());
-                    strcmd += string.Format(" ,{0}", work.BusinessYear.ToString());
-                    strcmd += string.Format(" ,{0}", work.TargetMonth.ToString());
-                    strcmd += string.Format(" ,{0}", work.TargetDay.ToString());
+                    strcmd.AppendFormat(" STR_TO_DATE('{0}','%Y/%m/%d')", work.Holiday.ToShortDateString());
+                    strcmd.AppendFormat(" ,{0}", work.BusinessYear.ToString());
+                    strcmd.AppendFormat(" ,{0}", work.TargetMonth.ToString());
+                    strcmd.AppendFormat(" ,{0}", work.TargetDay.ToString());
 
-                    strcmd += ")";
+                    strcmd.Append(")");
 
                     bDataFirst = false;
                 }
 
-                if (!ExecuteNonQuery(strcmd, false)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -202,28 +205,28 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool UpdateAction(string AddSQLString, HolidayCalenderMaster data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "UPDATE HolidayCalenderMaster";
+                strcmd.Append("UPDATE HolidayCalenderMaster");
 
-                strcmd += " SET";
+                strcmd.Append(" SET");
 
-                strcmd += string.Format(" Holiday = STR_TO_DATE('{0}','%Y/%m/%d')", data.Holiday.ToShortDateString());
-                strcmd += string.Format(",BusinessYear = {0}", data.BusinessYear.ToString());
-                strcmd += string.Format(",TargetMonth = {0}", data.TargetMonth.ToString());
-                strcmd += string.Format(",TargetDay = {0}", data.TargetDay.ToString());
+                strcmd.AppendFormat(" Holiday = STR_TO_DATE('{0}','%Y/%m/%d')", data.Holiday.ToShortDateString());
+                strcmd.AppendFormat(",BusinessYear = {0}", data.BusinessYear.ToString());
+                strcmd.AppendFormat(",TargetMonth = {0}", data.TargetMonth.ToString());
+                strcmd.AppendFormat(",TargetDay = {0}", data.TargetDay.ToString());
 
-                strcmd += AddSQLString;
+                strcmd.Append(AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -239,18 +242,18 @@
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
-                strcmd = string.Format("{0}{1}", "DELETE FROM HolidayCalenderMaster", AddSQLString);
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM HolidayCalenderMaster", AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -284,8 +287,7 @@
 
         #endregion
 
-        #region ãƒ‘ãƒ–ãƒªãƒƒã‚¯ãƒ¡ã‚½ãƒƒãƒ‰ï¼ˆç‰¹æ®Šå‡¦ç�†ï¼‰
-
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// <summary>
         /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// </summary>
@@ -293,19 +295,21 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreatePrimarykeyString(DateTime Holiday)
         {
-            string strWork = string.Empty;
+            StringBuilder strWork = new StringBuilder(); ;
             try
             {
-                strWork = string.Format(" Where Holiday = DATE_FORMAT('{0}','%Y/%m/%d')", Holiday.ToShortDateString());
+                strWork.AppendFormat(" Where Holiday = DATE_FORMAT('{0}','%Y/%m/%d')", Holiday.ToShortDateString());
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
+        #endregion
 
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// <summary>
         /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
         /// </summary>
@@ -313,21 +317,21 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreateSubkeyString(int Year, int Month = 0, int Day = 0)
         {
-            string strWork = string.Empty;
+            StringBuilder strWork = new StringBuilder();
             try
             {
-                strWork = string.Format(" Where BusinessYear = {0}", Year.ToString());
+                strWork.AppendFormat(" Where BusinessYear = {0}", Year.ToString());
                 if(Month != 0)
-                    strWork += string.Format(" And TargetMonth = {0}", Month.ToString());
+                    strWork.AppendFormat(" And TargetMonth = {0}", Month.ToString());
                 if (Day != 0)
-                    strWork += string.Format(" And TargetDay = {0}", Day.ToString());
+                    strWork.AppendFormat(" And TargetDay = {0}", Day.ToString());
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
 
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs	(revision 237)
@@ -79,32 +79,33 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         private string CreateSelectSQL()
         {
-            string strcmd = "SELECT";
-            strcmd += "  OrderCotegory";
-            strcmd += " ,OrderersCode";
-            strcmd += " ,DisplayOrder";
-            strcmd += " ,OrderFlg";
-            strcmd += " ,CorporateStatusName";
-            strcmd += " ,CorporateStatusPoint";
-            strcmd += " ,OrderersName1";
-            strcmd += " ,OrderersName2";
-            strcmd += " ,DepartmentName";
-            strcmd += " ,ChargePersonName";
-            strcmd += " ,ZipCode";
-            strcmd += " ,Address1";
-            strcmd += " ,Address2";
-            strcmd += " ,Address3";
-            strcmd += " ,PhoneNumber";
-            strcmd += " ,FaxNumber";
-            strcmd += " ,MailAddress";
-            strcmd += " ,Note";
-            strcmd += " ,DeleteFlg";
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+            strcmd.Append("  OrderCotegory");
+            strcmd.Append(" ,OrderersCode");
+            strcmd.Append(" ,DisplayOrder");
+            strcmd.Append(" ,OrderFlg");
+            strcmd.Append(" ,CorporateStatusName");
+            strcmd.Append(" ,CorporateStatusPoint");
+            strcmd.Append(" ,OrderersName1");
+            strcmd.Append(" ,OrderersName2");
+            strcmd.Append(" ,DepartmentName");
+            strcmd.Append(" ,ChargePersonName");
+            strcmd.Append(" ,ZipCode");
+            strcmd.Append(" ,Address1");
+            strcmd.Append(" ,Address2");
+            strcmd.Append(" ,Address3");
+            strcmd.Append(" ,PhoneNumber");
+            strcmd.Append(" ,FaxNumber");
+            strcmd.Append(" ,MailAddress");
+            strcmd.Append(" ,Note");
+            strcmd.Append(" ,DeleteFlg");
 
-            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " FROM OrderersMaster";
+            strcmd.Append(" ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM OrderersMaster");
 
-            return strcmd;
+            return strcmd.ToString();
         }
         #endregion
 
@@ -116,16 +117,17 @@
         public bool SelectAction(string AddSQLString, ref List<OrderersMaster> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -139,7 +141,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -153,16 +155,17 @@
         public bool SelectAction(string AddSQLString, ref OrderersMaster data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
                 if (arData.Count == 0) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
@@ -176,7 +179,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -190,60 +193,60 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(List<OrderersMaster> data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
                 bool bColFirst = true;
-                strcmd = "INSERT INTO OrderersMaster";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO OrderersMaster");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(OrderersColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES";
+                strcmd.Append(") VALUES");
 
                 bool bDataFirst = true;
                 foreach (OrderersMaster work in data)
                 {
-                    if (bDataFirst) strcmd += " (";
-                    else strcmd += ", (";
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
 
-                    strcmd += string.Format("  {0}", work.OrderCotegory);
-                    strcmd += string.Format(", {0}", work.OrderersCode);
-                    strcmd += string.Format(", {0}", work.DisplayOrder);
-                    strcmd += string.Format(", {0}", work.OrderFlg);
-                    strcmd += string.Format(",'{0}'", work.CorporateStatusName);
-                    strcmd += string.Format(", {0}", work.CorporateStatusPoint);
-                    strcmd += string.Format(",'{0}'", work.OrderersName1);
-                    strcmd += string.Format(",'{0}'", work.OrderersName2);
-                    strcmd += string.Format(",'{0}'", work.DepartmentName);
-                    strcmd += string.Format(",'{0}'", work.ChargePersonName);
-                    strcmd += string.Format(",'{0}'", work.ZipCode);
-                    strcmd += string.Format(",'{0}'", work.Address1);
-                    strcmd += string.Format(",'{0}'", work.Address2);
-                    strcmd += string.Format(",'{0}'", work.Address3);
-                    strcmd += string.Format(",'{0}'", work.PhoneNumber);
-                    strcmd += string.Format(",'{0}'", work.FaxNumber);
-                    strcmd += string.Format(",'{0}'", work.MailAddress);
-                    strcmd += string.Format(",'{0}'", work.Note);
-                    strcmd += string.Format(", {0}", work.DeleteFlg);
+                    strcmd.AppendFormat("  {0}", work.OrderCotegory);
+                    strcmd.AppendFormat(", {0}", work.OrderersCode);
+                    strcmd.AppendFormat(", {0}", work.DisplayOrder);
+                    strcmd.AppendFormat(", {0}", work.OrderFlg);
+                    strcmd.AppendFormat(",'{0}'", work.CorporateStatusName);
+                    strcmd.AppendFormat(", {0}", work.CorporateStatusPoint);
+                    strcmd.AppendFormat(",'{0}'", work.OrderersName1);
+                    strcmd.AppendFormat(",'{0}'", work.OrderersName2);
+                    strcmd.AppendFormat(",'{0}'", work.DepartmentName);
+                    strcmd.AppendFormat(",'{0}'", work.ChargePersonName);
+                    strcmd.AppendFormat(",'{0}'", work.ZipCode);
+                    strcmd.AppendFormat(",'{0}'", work.Address1);
+                    strcmd.AppendFormat(",'{0}'", work.Address2);
+                    strcmd.AppendFormat(",'{0}'", work.Address3);
+                    strcmd.AppendFormat(",'{0}'", work.PhoneNumber);
+                    strcmd.AppendFormat(",'{0}'", work.FaxNumber);
+                    strcmd.AppendFormat(",'{0}'", work.MailAddress);
+                    strcmd.AppendFormat(",'{0}'", work.Note);
+                    strcmd.AppendFormat(", {0}", work.DeleteFlg);
 
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
-                    strcmd += ")";
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
 
                     bDataFirst = false;
                 }
 
-                if (!ExecuteNonQuery(strcmd, false)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -257,54 +260,54 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(OrderersMaster work, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "INSERT INTO OrderersMaster";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO OrderersMaster");
+                strcmd.Append(" (");
 
                 bool bFirst = true;
                 foreach (var gender in Enum.GetValues(typeof(OrderersColumn)))
                 {
-                    if (!bFirst) strcmd += " ,";
-                    strcmd += gender.ToString();
+                    if (!bFirst) strcmd.Append(" ,");
+                    strcmd.Append(gender.ToString());
                     bFirst = false;
                 }
 
-                strcmd += ") VALUES (";
+                strcmd.Append(") VALUES (");
 
-                strcmd += string.Format("  {0}", work.OrderCotegory);
-                strcmd += string.Format(", {0}", work.OrderersCode);
-                strcmd += string.Format(", {0}", work.DisplayOrder);
-                strcmd += string.Format(", {0}", work.OrderFlg);
-                strcmd += string.Format(",'{0}'", work.CorporateStatusName);
-                strcmd += string.Format(", {0}", work.CorporateStatusPoint);
-                strcmd += string.Format(",'{0}'", work.OrderersName1);
-                strcmd += string.Format(",'{0}'", work.OrderersName2);
-                strcmd += string.Format(",'{0}'", work.DepartmentName);
-                strcmd += string.Format(",'{0}'", work.ChargePersonName);
-                strcmd += string.Format(",'{0}'", work.ZipCode);
-                strcmd += string.Format(",'{0}'", work.Address1);
-                strcmd += string.Format(",'{0}'", work.Address2);
-                strcmd += string.Format(",'{0}'", work.Address3);
-                strcmd += string.Format(",'{0}'", work.PhoneNumber);
-                strcmd += string.Format(",'{0}'", work.FaxNumber);
-                strcmd += string.Format(",'{0}'", work.MailAddress);
-                strcmd += string.Format(",'{0}'", work.Note);
-                strcmd += string.Format(", {0}", work.DeleteFlg);
+                strcmd.AppendFormat("  {0}", work.OrderCotegory);
+                strcmd.AppendFormat(", {0}", work.OrderersCode);
+                strcmd.AppendFormat(", {0}", work.DisplayOrder);
+                strcmd.AppendFormat(", {0}", work.OrderFlg);
+                strcmd.AppendFormat(",'{0}'", work.CorporateStatusName);
+                strcmd.AppendFormat(", {0}", work.CorporateStatusPoint);
+                strcmd.AppendFormat(",'{0}'", work.OrderersName1);
+                strcmd.AppendFormat(",'{0}'", work.OrderersName2);
+                strcmd.AppendFormat(",'{0}'", work.DepartmentName);
+                strcmd.AppendFormat(",'{0}'", work.ChargePersonName);
+                strcmd.AppendFormat(",'{0}'", work.ZipCode);
+                strcmd.AppendFormat(",'{0}'", work.Address1);
+                strcmd.AppendFormat(",'{0}'", work.Address2);
+                strcmd.AppendFormat(",'{0}'", work.Address3);
+                strcmd.AppendFormat(",'{0}'", work.PhoneNumber);
+                strcmd.AppendFormat(",'{0}'", work.FaxNumber);
+                strcmd.AppendFormat(",'{0}'", work.MailAddress);
+                strcmd.AppendFormat(",'{0}'", work.Note);
+                strcmd.AppendFormat(", {0}", work.DeleteFlg);
 
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
-                strcmd += ")";
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -319,44 +322,44 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool UpdateAction(string AddSQLString, OrderersMaster data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "UPDATE OrderersMaster";
+                strcmd.Append("UPDATE OrderersMaster");
 
-                strcmd += " SET";
+                strcmd.Append(" SET");
 
-                strcmd += string.Format("  OrderCotegory = {0}", data.OrderCotegory);
-                strcmd += string.Format(", OrderersCode = {0}", data.OrderersCode);
-                strcmd += string.Format(", DisplayOrder = {0}", data.DisplayOrder);
-                strcmd += string.Format(", OrderFlg = {0}", data.OrderFlg);
-                strcmd += string.Format(", CorporateStatusName = '{0}'", data.CorporateStatusName);
-                strcmd += string.Format(", CorporateStatusPoint = {0}", data.CorporateStatusPoint);
-                strcmd += string.Format(", OrderersName1 = '{0}'", data.OrderersName1);
-                strcmd += string.Format(", OrderersName2 = '{0}'", data.OrderersName2);
-                strcmd += string.Format(", DepartmentName = '{0}'", data.DepartmentName);
-                strcmd += string.Format(", ChargePersonName = '{0}'", data.ChargePersonName);
-                strcmd += string.Format(", ZipCode = '{0}'", data.ZipCode);
-                strcmd += string.Format(", Address1 = '{0}'", data.Address1);
-                strcmd += string.Format(", Address2 = '{0}'", data.Address2);
-                strcmd += string.Format(", Address3 = '{0}'", data.Address3);
-                strcmd += string.Format(", PhoneNumber = '{0}'", data.PhoneNumber);
-                strcmd += string.Format(", FaxNumber = '{0}'", data.FaxNumber);
-                strcmd += string.Format(", Note = '{0}'", data.Note);
-                strcmd += string.Format(", MailAddress = '{0}'", data.MailAddress);
-                strcmd += string.Format(", DeleteFlg = {0}", data.DeleteFlg);
+                strcmd.AppendFormat("  OrderCotegory = {0}", data.OrderCotegory);
+                strcmd.AppendFormat(", OrderersCode = {0}", data.OrderersCode);
+                strcmd.AppendFormat(", DisplayOrder = {0}", data.DisplayOrder);
+                strcmd.AppendFormat(", OrderFlg = {0}", data.OrderFlg);
+                strcmd.AppendFormat(", CorporateStatusName = '{0}'", data.CorporateStatusName);
+                strcmd.AppendFormat(", CorporateStatusPoint = {0}", data.CorporateStatusPoint);
+                strcmd.AppendFormat(", OrderersName1 = '{0}'", data.OrderersName1);
+                strcmd.AppendFormat(", OrderersName2 = '{0}'", data.OrderersName2);
+                strcmd.AppendFormat(", DepartmentName = '{0}'", data.DepartmentName);
+                strcmd.AppendFormat(", ChargePersonName = '{0}'", data.ChargePersonName);
+                strcmd.AppendFormat(", ZipCode = '{0}'", data.ZipCode);
+                strcmd.AppendFormat(", Address1 = '{0}'", data.Address1);
+                strcmd.AppendFormat(", Address2 = '{0}'", data.Address2);
+                strcmd.AppendFormat(", Address3 = '{0}'", data.Address3);
+                strcmd.AppendFormat(", PhoneNumber = '{0}'", data.PhoneNumber);
+                strcmd.AppendFormat(", FaxNumber = '{0}'", data.FaxNumber);
+                strcmd.AppendFormat(", Note = '{0}'", data.Note);
+                strcmd.AppendFormat(", MailAddress = '{0}'", data.MailAddress);
+                strcmd.AppendFormat(", DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = NOW()";
-                strcmd += AddSQLString;
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -372,18 +375,18 @@
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
-                strcmd = string.Format("{0}{1}", "DELETE FROM OrderersMaster", AddSQLString);
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM OrderersMaster", AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -445,16 +448,17 @@
         public int SelectMaxOrderersCodeCount(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
             int iRet = 0;
             try
             {
                 // SQLä½œæˆ�
-                strcmd = "SELECT IFNULL(MAX(OrderersCode), 0) FROM OrderersMaster" + AddSQLString;
+                strcmd.Append("SELECT IFNULL(MAX(OrderersCode), 0) FROM OrderersMaster");
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return iRet;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -468,7 +472,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
             }
 
             return iRet;
@@ -483,19 +487,19 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreatePrimarykeyString(int OrderCotegory, int OrderersCode =0)
         {
-            string strWork = "";
+            StringBuilder strWork = new StringBuilder();
             try
             {
-                strWork = string.Format(" Where OrderCotegory = {0}", OrderCotegory);
+                strWork.AppendFormat(" Where OrderCotegory = {0}", OrderCotegory);
                 if (OrderersCode != 0)
-                    strWork += string.Format(" And OrderersCode = {0}", OrderersCode);
+                    strWork.AppendFormat(" And OrderersCode = {0}", OrderersCode);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
         #endregion
 
@@ -509,16 +513,17 @@
         public int GetMaxDisplayOrder(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
             int iRet = 0;
             try
             {
                 // SQLä½œæˆ�
-                strcmd = "SELECT IFNULL(MAX(DisplayOrder), 0) FROM OrderersMaster" + AddSQLString;
+                strcmd.Append("SELECT IFNULL(MAX(DisplayOrder), 0) FROM OrderersMaster");
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return iRet;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -532,7 +537,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
             }
 
             return iRet;
@@ -549,21 +554,22 @@
         public bool SetDisplayOrder(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
             try
             {
                 // SQLä½œæˆ�
-                strcmd = "UPDATE ORDERERSMASTER SET DisplayOrder = ROWNUM" + AddSQLString;
+                strcmd.Append("UPDATE ORDERERSMASTER SET DisplayOrder = ROWNUM");
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs	(revision 237)
@@ -63,17 +63,18 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         private string CreateSelectSQL()
         {
-            string strcmd = "SELECT";
-            strcmd += "  PersonCode";
-            strcmd += ", DepartmentCode";
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+            strcmd.Append("  PersonCode");
+            strcmd.Append(", DepartmentCode");
 
-            strcmd += ", AffiliationFlg";
+            strcmd.Append(", AffiliationFlg");
 
-            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " FROM PersonDepartmentMaster";
+            strcmd.Append(", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM PersonDepartmentMaster");
 
-            return strcmd;
+            return strcmd.ToString();
         }
         #endregion
 
@@ -88,16 +89,17 @@
         public bool SelectAction(string AddSQLString, ref List<PersonDepartmentMaster> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -111,7 +113,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -128,16 +130,17 @@
         public bool SelectAction(string AddSQLString, ref PersonDepartmentMaster data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
                 if (arData.Count == 0) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
@@ -148,7 +151,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -162,36 +165,36 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(PersonDepartmentMaster data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
                 bool bColFirst = true;
-                strcmd = "INSERT INTO PersonDepartmentMaster";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO PersonDepartmentMaster");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(NameColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES (";
+                strcmd.Append(") VALUES (");
 
-                strcmd += string.Format("  {0}", data.PersonCode);
-                strcmd += string.Format(", {0}", data.DepartmentCode);
-                strcmd += string.Format(", {0}", data.AffiliationFlg.ToString());
+                strcmd.AppendFormat("  {0}", data.PersonCode);
+                strcmd.AppendFormat(", {0}", data.DepartmentCode);
+                strcmd.AppendFormat(", {0}", data.AffiliationFlg.ToString());
 
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.EntryDate);
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.UpdateDate);
-                strcmd += ")";
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.UpdateDate);
+                strcmd.Append(")");
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -205,44 +208,44 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(List<PersonDepartmentMaster> data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
                 bool bColFirst = true;
-                strcmd = "INSERT INTO PersonDepartmentMaster";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO PersonDepartmentMaster");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(NameColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES";
+                strcmd.Append(") VALUES");
 
                 bool bDataFirst = true;
                 foreach (PersonDepartmentMaster work in data)
                 {
-                    if (bDataFirst) strcmd += " (";
-                    else strcmd += ", (";
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
 
-                    strcmd += string.Format("  {0}", work.PersonCode);
-                    strcmd += string.Format(", {0}", work.DepartmentCode);
-                    strcmd += string.Format(", {0}", work.AffiliationFlg.ToString());
+                    strcmd.AppendFormat("  {0}", work.PersonCode);
+                    strcmd.AppendFormat(", {0}", work.DepartmentCode);
+                    strcmd.AppendFormat(", {0}", work.AffiliationFlg.ToString());
 
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
-                    strcmd += ")";
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
 
                     bDataFirst = false;
                 }
 
-                if (!ExecuteNonQuery(strcmd, false)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -257,28 +260,28 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool UpdateAction(string AddSQLString, PersonDepartmentMaster data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "UPDATE PersonDepartmentMaster";
+                strcmd.Append("UPDATE PersonDepartmentMaster");
 
-                strcmd += " SET";
+                strcmd.Append(" SET");
 
-                strcmd += string.Format("  PersonCode = {0}", data.PersonCode.ToString());
-                strcmd += string.Format(", DepartmentCode = {0}", data.DepartmentCode.ToString());
+                strcmd.AppendFormat("  PersonCode = {0}", data.PersonCode.ToString());
+                strcmd.AppendFormat(", DepartmentCode = {0}", data.DepartmentCode.ToString());
 
-                strcmd += string.Format(", AffiliationFlg = {0}", data.AffiliationFlg);
-                strcmd += ", UpdateDate = NOW()";
-                strcmd += AddSQLString;
+                strcmd.AppendFormat(", AffiliationFlg = {0}", data.AffiliationFlg);
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -294,18 +297,18 @@
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
-                strcmd = string.Format("{0}{1}", "DELETE FROM PersonDepartmentMaster", AddSQLString);
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM PersonDepartmentMaster", AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -364,19 +367,19 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreatePrimarykeyString(int PersonCode, int DepartmentCode = 0)
         {
-            string strWork = "";
+            StringBuilder strWork = new StringBuilder();
             try
             {
-                strWork = string.Format(" Where PersonCode = {0}", PersonCode);
+                strWork.AppendFormat(" Where PersonCode = {0}", PersonCode);
                 if (DepartmentCode != 0)
-                    strWork += string.Format(" And DepartmentCode = {0}", DepartmentCode);
+                    strWork.AppendFormat(" And DepartmentCode = {0}", DepartmentCode);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
         #endregion
     }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs	(revision 237)
@@ -64,18 +64,19 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         private string CreateSelectSQL()
         {
-            string strcmd = "SELECT";
-            strcmd += " RecordNumber";
-            strcmd += ",BranchNumber";
-            strcmd += ",SeqNum";
-            strcmd += ",BrowsingCode";
-            strcmd += ",DATE_FORMAT(BrowsingDate, '%Y/%m/%d %H:%i:%s')";
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+            strcmd.Append(" RecordNumber");
+            strcmd.Append(",BranchNumber");
+            strcmd.Append(",SeqNum");
+            strcmd.Append(",BrowsingCode");
+            strcmd.Append(",DATE_FORMAT(BrowsingDate, '%Y/%m/%d %H:%i:%s')");
 
-            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
-            strcmd += " FROM MessageBrowsingHistory";
+            strcmd.Append(" ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM MessageBrowsingHistory");
 
-            return strcmd;
+            return strcmd.ToString();
         }
         #endregion
 
@@ -83,16 +84,17 @@
         public bool SelectAction(string AddSQLString, ref List<MessageBrowsingHistory> data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -106,7 +108,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -116,16 +118,17 @@
         public bool SelectAction(string AddSQLString, ref MessageBrowsingHistory data, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
 
             try
             {
                 // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
-                strcmd = CreateSelectSQL() + AddSQLString;
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
                 if (arData.Count == 0) return false;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
@@ -140,7 +143,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -154,38 +157,38 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(MessageBrowsingHistory work, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
                 bool bColFirst = true;
-                strcmd = "INSERT INTO MessageBrowsingHistory";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO MessageBrowsingHistory");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(NameColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES (";
+                strcmd.Append(") VALUES (");
 
-                strcmd += string.Format("  {0} ", CommonMotions.cnvInt(work.RecordNumber.ToString()));
-                strcmd += string.Format(", {0} ", CommonMotions.cnvInt(work.BranchNumber.ToString()));
-                strcmd += string.Format(", {0} ", work.SeqNum);
-                strcmd += string.Format(", {0} ", work.BrowsingCode);
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.BrowsingDate.ToString());
+                strcmd.AppendFormat("  {0} ", CommonMotions.cnvInt(work.RecordNumber.ToString()));
+                strcmd.AppendFormat(", {0} ", CommonMotions.cnvInt(work.BranchNumber.ToString()));
+                strcmd.AppendFormat(", {0} ", work.SeqNum);
+                strcmd.AppendFormat(", {0} ", work.BrowsingCode);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.BrowsingDate.ToString());
 
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
-                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
-                strcmd += ")";
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -199,46 +202,46 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool InsertAction(List<MessageBrowsingHistory> data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
                 bool bColFirst = true;
-                strcmd = "INSERT INTO MessageBrowsingHistory";
-                strcmd += " (";
+                strcmd.Append("INSERT INTO MessageBrowsingHistory");
+                strcmd.Append(" (");
                 foreach (var gender in Enum.GetValues(typeof(NameColumn)))
                 {
-                    if (!bColFirst) strcmd += ", ";
-                    strcmd += gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
                     bColFirst = false;
                 }
-                strcmd += ") VALUES";
+                strcmd.Append(") VALUES");
 
                 bool bDataFirst = true;
                 foreach (MessageBrowsingHistory work in data)
                 {
-                    if (bDataFirst) strcmd += " (";
-                    else strcmd += ", (";
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
 
-                    strcmd += string.Format("  {0} ", CommonMotions.cnvInt(work.RecordNumber.ToString()));
-                    strcmd += string.Format(", {0} ", CommonMotions.cnvInt(work.BranchNumber.ToString()));
-                    strcmd += string.Format(", {0} ", work.SeqNum);
-                    strcmd += string.Format(", {0} ", work.BrowsingCode);
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.BrowsingDate.ToString());
+                    strcmd.AppendFormat("  {0} ", CommonMotions.cnvInt(work.RecordNumber.ToString()));
+                    strcmd.AppendFormat(", {0} ", CommonMotions.cnvInt(work.BranchNumber.ToString()));
+                    strcmd.AppendFormat(", {0} ", work.SeqNum);
+                    strcmd.AppendFormat(", {0} ", work.BrowsingCode);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.BrowsingDate.ToString());
 
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
-                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
-                    strcmd += ")";
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
 
                     bDataFirst = false;
                 }
 
-                if (!ExecuteNonQuery(strcmd, false)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -253,30 +256,30 @@
         /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
         public bool UpdateAction(string AddSQLString, MessageBrowsingHistory data, bool bConnect = true)
         {
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
 
-                strcmd = "UPDATE MessageBrowsingHistory";
+                strcmd.Append("UPDATE MessageBrowsingHistory");
 
-                strcmd += " SET";
+                strcmd.Append(" SET");
 
-                strcmd += string.Format(" RecordNumber = {0} ", CommonMotions.cnvInt(data.RecordNumber.ToString()));
-                strcmd += string.Format(",BranchNumber = {0} ", CommonMotions.cnvInt(data.BranchNumber.ToString()));
-                strcmd += string.Format(",SeqNum = {0} ", data.SeqNum);
-                strcmd += string.Format(",BrowsingCode = {0} ", data.BrowsingCode);
-                strcmd += string.Format(",BrowsingDate = STR_TO_DATE('{0}',, '%Y/%m/%d %H:%i:%s')", data.BrowsingDate.ToShortDateString());
+                strcmd.AppendFormat(" RecordNumber = {0} ", CommonMotions.cnvInt(data.RecordNumber.ToString()));
+                strcmd.AppendFormat(",BranchNumber = {0} ", CommonMotions.cnvInt(data.BranchNumber.ToString()));
+                strcmd.AppendFormat(",SeqNum = {0} ", data.SeqNum);
+                strcmd.AppendFormat(",BrowsingCode = {0} ", data.BrowsingCode);
+                strcmd.AppendFormat(",BrowsingDate = STR_TO_DATE('{0}',, '%Y/%m/%d %H:%i:%s')", data.BrowsingDate.ToShortDateString());
 
-                strcmd += ", UpdateDate = NOW()";
-                strcmd += AddSQLString;
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -292,18 +295,18 @@
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             try
             {
-                strcmd = string.Format("{0}{1}", "DELETE FROM MessageBrowsingHistory", AddSQLString);
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM MessageBrowsingHistory", AddSQLString);
 
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
 
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
                 return false;
             }
         }
@@ -353,20 +356,20 @@
         /// <returns>Whereæ–‡å­—åˆ—</returns>
         public string CreatePrimarykeyString(int RecordNumber, int BranchNumber, int SeqNum = 0)
         {
-            string strWork = string.Empty;
+            StringBuilder strWork = new StringBuilder();
             try
             {
-                strWork = string.Format(" Where RecordNumber = {0}", RecordNumber);
-                strWork += string.Format(" And BranchNumber = {0}", BranchNumber);
+                strWork.AppendFormat(" Where RecordNumber = {0}", RecordNumber);
+                strWork.AppendFormat(" And BranchNumber = {0}", BranchNumber);
                 if (SeqNum != 0)
-                    strWork += string.Format(" And SeqNum = {0}", SeqNum);
+                    strWork.AppendFormat(" And SeqNum = {0}", SeqNum);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
             }
 
-            return strWork;
+            return strWork.ToString();
         }
 
         #endregion
@@ -381,16 +384,16 @@
         public int SelectMaxSeqNoCount(string AddSQLString, bool bConnect = true)
         {
             // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
-            string strcmd = "";
+            StringBuilder strcmd = new StringBuilder();
             ArrayList arData = new ArrayList();
             int iRet = 0;
             try
             {
                 // SQLä½œæˆ�
-                strcmd = "SELECT IFNULL(MAX(SeqNum), 0) FROM MESSAGEBROWSINGHISTORY" + AddSQLString;
+                strcmd.AppendFormat("SELECT IFNULL(MAX(SeqNum), 0) FROM MESSAGEBROWSINGHISTORY{0}", AddSQLString);
 
                 // SQLå®Ÿè¡Œ
-                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return iRet;
 
                 // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
                 foreach (object[] objwrk in arData)
@@ -403,7 +406,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
             }
             return iRet;
         }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPData.cs	(revision 237)
@@ -0,0 +1,383 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ï¼¤ï¼¢ã‚¢ã‚¯ã‚»ã‚¹
+    /// </summary>
+    public class IOSFPData : MySqlProcess
+    {
+        #region å®šç¾©éƒ¨
+        /// <summary>
+        /// log4netãƒ­ã‚°ã‚’ä½¿ç”¨ã�™ã‚‹
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region å®šæ•°
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ä¸¦ã�³
+        /// </summary>
+        public enum DataColumn
+        {
+            ConstructionCode = 0,
+            PettionDate,
+            PersonCode,
+            StringValue,
+            OrderNo,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// <summary>
+        /// ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOSFPData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢SQLä½œæˆ�
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢SQLä½œæˆ�
+        /// </summary>
+        /// <param name="AddSQLString">æ¤œç´¢æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        private string CreateSelectSQL()
+        {
+            StringBuilder strcmd = new StringBuilder();
+
+            strcmd.Append("SELECT");
+
+            strcmd.Append("  ConstructionCode");
+            strcmd.Append(", PettionDate");
+            strcmd.Append(", PersonCode");
+            strcmd.Append(", StringValue");
+            strcmd.Append(", OrderNo");
+
+            strcmd.Append(" ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM SFPData");
+
+            return strcmd.ToString();
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆè¤‡æ•°ï¼‰
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆè¤‡æ•°ï¼‰
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref List<SFPData> data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    SFPData work = new SFPData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆ1ä»¶ï¼‰
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆ1ä»¶ï¼‰
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref SFPData data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    Reader2Struct(objwrk, ref data);
+                    break;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿è¿½åŠ (è¤‡æ•°)
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿è¿½åŠ (è¤‡æ•°)
+        /// </summary>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool InsertAction(List<SFPData> data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO SFPData");
+                strcmd.Append(" (");
+                foreach (var gender in Enum.GetValues(typeof(DataColumn)))
+                {
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
+                    bColFirst = false;
+                }
+                strcmd.Append(") VALUES");
+
+                bool bDataFirst = true;
+                foreach (SFPData work in data)
+                {
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
+
+                    strcmd.AppendFormat("  {0}", work.ConstructionCode);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')", work.PettionDate.ToShortDateString());
+                    strcmd.AppendFormat(", {0}", work.PersonCode);
+                    strcmd.AppendFormat(",'{0}'", work.StringValue);
+                    strcmd.AppendFormat(", {0}", work.OrderNo);
+
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
+
+                    bDataFirst = false;
+                }
+
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿è¿½åŠ (1ä»¶)
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿è¿½åŠ (1ä»¶)
+        /// </summary>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool InsertAction(SFPData work, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("INSERT INTO SFPData");
+                strcmd.Append(" (");
+
+                bool bFirst = true;
+                foreach (var gender in Enum.GetValues(typeof(DataColumn)))
+                {
+                    if (!bFirst) strcmd.Append(" ,");
+                    strcmd.Append(gender.ToString());
+                    bFirst = false;
+                }
+
+                strcmd.Append(") VALUES (");
+
+                strcmd.AppendFormat("  {0}", work.ConstructionCode);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')", work.PettionDate.ToShortDateString());
+                strcmd.AppendFormat(", {0}", work.PersonCode);
+                strcmd.AppendFormat(",'{0}'", work.StringValue);
+                strcmd.AppendFormat(", {0}", work.OrderNo);
+
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// </summary>
+        /// <param name="AddSQLString">æ›´æ–°æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool UpdateAction(string AddSQLString, SFPData data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("UPDATE SFPData");
+
+                strcmd.Append(" SET");
+
+                strcmd.AppendFormat("  ConstructionCode = {0}", data.ConstructionCode);
+                strcmd.AppendFormat(", PettionDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PettionDate.ToShortDateString());
+                strcmd.AppendFormat(", PersonCode = {0}", data.PersonCode);
+                strcmd.AppendFormat(", StringValue = '{0}'", data.StringValue);
+                strcmd.AppendFormat(", OrderNo = {0}", data.OrderNo);
+
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// </summary>
+        /// <param name="AddSQLString">å‰Šé™¤æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM SFPData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// <summary>
+        /// OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">æ§‹é€ ä½“</param>
+        public void Reader2Struct(object[] objwrk, ref SFPData wrk)
+        {
+            try
+            {
+                // ãƒ‡ãƒ¼ã‚¿å�–å¾—
+                wrk.ConstructionCode = int.Parse(objwrk[(int)DataColumn.ConstructionCode].ToString());
+                wrk.PettionDate = DateTime.Parse(objwrk[(int)DataColumn.PettionDate].ToString());
+                wrk.PersonCode = int.Parse(objwrk[(int)DataColumn.PersonCode].ToString());
+                wrk.StringValue = objwrk[(int)DataColumn.StringValue].ToString();
+                wrk.OrderNo = int.Parse(objwrk[(int)DataColumn.OrderNo].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ï¼­ï½™ï¼³ï¼±ï¼¬ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
+        /// <summary>
+        /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
+        /// </summary>
+        /// <param name="ItemCode">å¤§å·¥ç¨®ã‚­ãƒ¼</param>
+        /// <returns>Whereæ–‡å­—åˆ—</returns>
+        public string CreatePrimarykeyString(int ConstructionCode, DateTime PettionDate, int PersonCode = 0)
+        {
+            StringBuilder strWork = new StringBuilder();
+            try
+            {
+                strWork.AppendFormat(" Where ConstructionCode = {0}", ConstructionCode);
+                strWork.AppendFormat(" Adn PettionDate = STR_TO_DATE('{0}','%Y/%m/%d')", PettionDate.ToShortDateString());
+                if (PersonCode != 0)
+                    strWork.AppendFormat(" And PersonCode = {0}", PersonCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
+            }
+
+            return strWork.ToString();
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSFPDataDetail.cs	(revision 237)
@@ -0,0 +1,379 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ï¼¤ï¼¢ã‚¢ã‚¯ã‚»ã‚¹
+    /// </summary>
+    public class IOSFPDataDetail : MySqlProcess
+    {
+        #region å®šç¾©éƒ¨
+        /// <summary>
+        /// log4netãƒ­ã‚°ã‚’ä½¿ç”¨ã�™ã‚‹
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region å®šæ•°
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ä¸¦ã�³
+        /// </summary>
+        public enum DataColumn
+        {
+            ConstructionCode = 0,
+            PettionDate,
+            PersonCode,
+            CompanyCode,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// <summary>
+        /// ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOSFPDataDetail()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢SQLä½œæˆ�
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢SQLä½œæˆ�
+        /// </summary>
+        /// <param name="AddSQLString">æ¤œç´¢æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        private string CreateSelectSQL()
+        {
+            StringBuilder strcmd = new StringBuilder();
+
+            strcmd.Append("SELECT");
+
+            strcmd.Append("  ConstructionCode");
+            strcmd.Append(", PettionDate");
+            strcmd.Append(", PersonCode");
+            strcmd.Append(", CompanyCode");
+
+            strcmd.Append(" ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(" FROM SFPDataDetail");
+
+            return strcmd.ToString();
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆè¤‡æ•°ï¼‰
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆè¤‡æ•°ï¼‰
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref List<SFPDataDetail> data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    SFPDataDetail work = new SFPDataDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆ1ä»¶ï¼‰
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ¤œç´¢ï¼ˆ1ä»¶ï¼‰
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref SFPDataDetail data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQLä½œæˆ�ï¼ˆDateTimeåž‹ã�Œå¤‰æ�›ã�§ã��ã�ªã�„ã�®ã�§Charã�«å¤‰æ�›ã�—ã�¦ã�Šã��ï¼‰
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    Reader2Struct(objwrk, ref data);
+                    break;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿è¿½åŠ (è¤‡æ•°)
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿è¿½åŠ (è¤‡æ•°)
+        /// </summary>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool InsertAction(List<SFPDataDetail> data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO SFPDataDetail");
+                strcmd.Append(" (");
+                foreach (var gender in Enum.GetValues(typeof(DataColumn)))
+                {
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
+                    bColFirst = false;
+                }
+                strcmd.Append(") VALUES");
+
+                bool bDataFirst = true;
+                foreach (SFPDataDetail work in data)
+                {
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
+
+                    strcmd.AppendFormat("  {0}", work.ConstructionCode);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')", work.PettionDate.ToShortDateString());
+                    strcmd.AppendFormat(", {0}", work.PersonCode);
+                    strcmd.AppendFormat(", {0}", work.CompanyCode);
+
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
+
+                    bDataFirst = false;
+                }
+
+                if (!ExecuteNonQuery(strcmd.ToString(), false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿è¿½åŠ (1ä»¶)
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿è¿½åŠ (1ä»¶)
+        /// </summary>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool InsertAction(SFPDataDetail work, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("INSERT INTO SFPDataDetail");
+                strcmd.Append(" (");
+
+                bool bFirst = true;
+                foreach (var gender in Enum.GetValues(typeof(DataColumn)))
+                {
+                    if (!bFirst) strcmd.Append(" ,");
+                    strcmd.Append(gender.ToString());
+                    bFirst = false;
+                }
+
+                strcmd.Append(") VALUES (");
+
+                strcmd.AppendFormat("  {0}", work.ConstructionCode);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')", work.PettionDate.ToShortDateString());
+                strcmd.AppendFormat(", {0}", work.PersonCode);
+                strcmd.AppendFormat(", {0}", work.CompanyCode);
+
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// </summary>
+        /// <param name="AddSQLString">æ›´æ–°æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool UpdateAction(string AddSQLString, SFPDataDetail data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("UPDATE SFPDataDetail");
+
+                strcmd.Append(" SET");
+
+                strcmd.AppendFormat("  ConstructionCode = {0}", data.ConstructionCode);
+                strcmd.AppendFormat(", PettionDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PettionDate.ToShortDateString());
+                strcmd.AppendFormat(", PersonCode = {0}", data.PersonCode);
+                strcmd.AppendFormat(", CompanyCode = {0}", data.CompanyCode);
+
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// <summary>
+        /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// </summary>
+        /// <param name="AddSQLString">å‰Šé™¤æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM SFPDataDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// <summary>
+        /// OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">æ§‹é€ ä½“</param>
+        public void Reader2Struct(object[] objwrk, ref SFPDataDetail wrk)
+        {
+            try
+            {
+                // ãƒ‡ãƒ¼ã‚¿å�–å¾—
+                wrk.ConstructionCode = int.Parse(objwrk[(int)DataColumn.ConstructionCode].ToString());
+                wrk.PettionDate = DateTime.Parse(objwrk[(int)DataColumn.PettionDate].ToString());
+                wrk.PersonCode = int.Parse(objwrk[(int)DataColumn.PersonCode].ToString());
+                wrk.CompanyCode = int.Parse(objwrk[(int)DataColumn.CompanyCode].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ï¼­ï½™ï¼³ï¼±ï¼¬ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
+        /// <summary>
+        /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
+        /// </summary>
+        /// <param name="ItemCode">å¤§å·¥ç¨®ã‚­ãƒ¼</param>
+        /// <returns>Whereæ–‡å­—åˆ—</returns>
+        public string CreatePrimarykeyString(int ConstructionCode, DateTime PettionDate, int PersonCode = 0, int CompanyCode = 0)
+        {
+            StringBuilder strWork = new StringBuilder();
+            try
+            {
+                strWork.AppendFormat(" Where ConstructionCode = {0}", ConstructionCode);
+                strWork.AppendFormat(" Adn PettionDate = STR_TO_DATE('{0}','%Y/%m/%d')", PettionDate.ToShortDateString());
+                if (PersonCode != 0)
+                    strWork.AppendFormat(" And PersonCode = {0}", PersonCode);
+                if (CompanyCode != 0)
+                    strWork.AppendFormat(" And CompanyCode = {0}", CompanyCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
+            }
+
+            return strWork.ToString();
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/SFPData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/SFPData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/SFPData.cs	(revision 237)
@@ -0,0 +1,106 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ãƒ‡ãƒ¼ã‚¿
+    /// </summary>
+    public class SFPData
+    {
+        #region ãƒ¡ãƒ³ãƒ�å¤‰æ•°
+        /// <summary>
+        /// å·¥äº‹ç•ªå�·
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        /// <summary>
+        /// ç”³è«‹æ—¥æ™‚
+        /// </summary>
+        private DateTime m_PettionDate = DateTime.MinValue;
+        /// <summary>
+        /// ç”³è«‹è€…ç•ªå�·
+        /// </summary>
+        private int m_PersonCode = 0;
+        /// <summary>
+        /// ã‚³ãƒ¡ãƒ³ãƒˆ
+        /// </summary>
+        private string m_StringValue = string.Empty;
+        /// <summary>
+        /// ç”³è«‹å�—ä»˜ç•ªå�·
+        /// </summary>
+        private int m_OrderNo = 0;
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        private DateTime m_EntryDate = DateTime.Now;
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        private DateTime m_UpdateDate = DateTime.Now;
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        #endregion
+
+        #region ãƒ—ãƒ­ãƒ‘ãƒ†ã‚£
+        /// <summary>
+        /// å·¥äº‹ç•ªå�·
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// ç”³è«‹æ—¥æ™‚
+        /// </summary>
+        public DateTime PettionDate
+        {
+            get { return m_PettionDate; }
+            set { m_PettionDate = value; }
+        }
+        /// <summary>
+        /// ç”³è«‹è€…ç•ªå�·
+        /// </summary>
+        public int PersonCode
+        {
+            get { return m_PersonCode; }
+            set { m_PersonCode = value; }
+        }
+        /// <summary>
+        /// ã‚³ãƒ¡ãƒ³ãƒˆ
+        /// </summary>
+        public string StringValue
+        {
+            get { return m_StringValue; }
+            set { m_StringValue = value; }
+        }
+        /// <summary>
+        /// ç”³è«‹å�—ä»˜ç•ªå�·
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        public DateTime EntryDate
+        {
+            set { m_EntryDate = value; }
+            get { return m_EntryDate; }
+        }
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            set { m_UpdateDate = value; }
+            get { return m_UpdateDate; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/SFPDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/SFPDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/SFPDataDetail.cs	(revision 237)
@@ -0,0 +1,94 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«æ˜Žç´°ãƒ‡ãƒ¼ã‚¿
+    /// </summary>
+    public class SFPDataDetail
+    {
+        #region ãƒ¡ãƒ³ãƒ�å¤‰æ•°
+        /// <summary>
+        /// å·¥äº‹ç•ªå�·
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        /// <summary>
+        /// ç”³è«‹æ—¥æ™‚
+        /// </summary>
+        private DateTime m_PettionDate = DateTime.MinValue;
+        /// <summary>
+        /// ç”³è«‹è€…ç•ªå�·
+        /// </summary>
+        private int m_PersonCode = 0;
+        /// <summary>
+        /// å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        private int m_CompanyCode = 0;
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        private DateTime m_EntryDate = DateTime.Now;
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        private DateTime m_UpdateDate = DateTime.Now;
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        #endregion
+
+        #region ãƒ—ãƒ­ãƒ‘ãƒ†ã‚£
+        /// <summary>
+        /// å·¥äº‹ç•ªå�·
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// ç”³è«‹æ—¥æ™‚
+        /// </summary>
+        public DateTime PettionDate
+        {
+            get { return m_PettionDate; }
+            set { m_PettionDate = value; }
+        }
+        /// <summary>
+        /// ç”³è«‹è€…ç•ªå�·
+        /// </summary>
+        public int PersonCode
+        {
+            get { return m_PersonCode; }
+            set { m_PersonCode = value; }
+        }
+        /// <summary>
+        /// å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        public DateTime EntryDate
+        {
+            set { m_EntryDate = value; }
+            get { return m_EntryDate; }
+        }
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            set { m_UpdateDate = value; }
+            get { return m_UpdateDate; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 237)
@@ -221,73 +221,6 @@
         {
             try
             {
-                // �VƒZƒLƒ…ƒŠƒeƒBƒf�[ƒ^‘Î‰ž�Ï‚Ý‚©‚ðŠm”F‚·‚é
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    InitCombBox_OLD();
-                }
-                else
-                {
-                    InitCombBox_NEW();
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦�i‹Œ�j
-        /// <summary>
-        /// ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦�i‹Œ�j
-        /// </summary>
-        private void InitCombBox_OLD()
-        {
-            try
-            {
-                // ƒVƒXƒeƒ€Œ ŒÀ‚É‚æ‚Á‚Äƒf�[ƒ^ƒAƒNƒZƒX‚É�§ŒÀ‚ª‚ ‚é
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key
-                || CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                {
-                    // ƒVƒXƒeƒ€ŠÇ—�ŽÒ
-                    // �Å�‚‹@–§ŠÇ—�ŽÒ
-                    // “�Š‡‹@–§ŠÇ—�ŽÒ
-                    // ‘�–±•”�Š‘®ŽÒ‚Í‘S‚ÄŒ©‚¦‚é
-
-                    // •”���E’S“–ŽÒƒRƒ“ƒ{•\Ž¦
-                    DispAllCombBoxControl(true);
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // �Š‘®’·
-                    // •”��ƒRƒ“ƒ{”ñ•\Ž¦
-                    NonDispDepCombBox();
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ˆê”ÊŽg—pŽÒ�iŽ©•ª‚Ì‚ÝƒAƒNƒZƒX‰Â”\�j
-                    // •”���E’S“–ŽÒƒRƒ“ƒ{”ñ•\Ž¦
-                    DispAllCombBoxControl(false);
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦�i�V�j
-        /// <summary>
-        /// ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦�i�V�j
-        /// </summary>
-        private void InitCombBox_NEW()
-        {
-            try
-            {
                 int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // ‘S•”��
                 int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // •¡�”•”��
                 int Only = (int)CommonDefine.SecurityRangePos.Only;                 // Ž©•”��‚Ì‚Ý
@@ -1078,7 +1011,7 @@
         }
         #endregion
 
-        #region �¿‹�ƒf�[ƒ^�³”FŒŸ�õSQL�ì�¬
+        #region ŒŸ�õSQL�ì�¬:�¿‹�ƒf�[ƒ^�³”F
         /// <summary>
         /// �¿‹�ƒf�[ƒ^�³”FŒŸ�õSQL�ì�¬
         /// </summary>
@@ -1110,7 +1043,12 @@
             strSQL.Append(" DEP.DEPARTMENTCODE,");
             strSQL.Append(" DEP.DISPLAYORDER,");
             strSQL.Append(" PERSON.DISPLAYORDER");
-            strSQL.Append(" FROM PURCHASEORDER A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL C, DEPARTMENTMASTER DEP, PERSONINCHARGEMASTER PERSON");
+            strSQL.Append(" FROM PURCHASEORDER A");
+            strSQL.Append(", CONSTRUCTIONBASEINFO B");
+            strSQL.Append(", CONSTRUCTIONBASEINFODETAIL C");
+            strSQL.Append(", DEPARTMENTMASTER DEP");
+            strSQL.Append(", PERSONINCHARGEMASTER PERSON");
+            strSQL.Append(", requestdata AS Req");
             strSQL.AppendFormat(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL APP WHERE APP.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND APP.ApprovalCode = {0})", m_ApprovalCode);
             strSQL.Append(" AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE");
             strSQL.AppendFormat(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
@@ -1119,6 +1057,7 @@
             strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.DetailNo = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
             strSQL.Append(" AND B.CONSTRUCTIONPERSONCODE = PERSON.PERSONCODE");
             strSQL.Append(" AND PERSON.DEPARTMENTCODE = DEP.DEPARTMENTCODE");
+            strSQL.Append(" AND Req.MAINCONSTRUCTIONCODE = A.ConstructionCode");
             if (DepartmentCode != 0) strSQL.AppendFormat(" AND DEP.DEPARTMENTCODE = {0}", DepartmentCode);
             if (PersonCode != 0) strSQL.AppendFormat(" AND PERSON.PERSONCODE = {0}", PersonCode);
             strSQL.Append(wrkSec.ToString());
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs	(revision 237)
@@ -380,6 +380,7 @@
             this.Column9.HeaderText = "å–¶æ¥­éƒ¨ç½²";
             this.Column9.Name = "Column9";
             this.Column9.ReadOnly = true;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column9.Width = 135;
             // 
             // Column5
@@ -402,6 +403,7 @@
             this.Column10.HeaderText = "å·¥äº‹éƒ¨ç½²";
             this.Column10.Name = "Column10";
             this.Column10.ReadOnly = true;
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column10.Width = 135;
             // 
             // Column6
@@ -448,6 +450,7 @@
             this.Column8.HeaderText = "å�°åˆ·";
             this.Column8.Name = "Column8";
             this.Column8.ReadOnly = true;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column8.Visible = false;
             this.Column8.Width = 30;
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 237)
@@ -301,28 +301,34 @@
         /// <param name="strSQL"></param>
         private void CreateSQL01(ref StringBuilder strSQL)
         {
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            for (int i = 0; i < s_SQLPart4Tying.Length; i++) wrkFormat.Append(s_SQLPart4Tying[i]);
+            try
+            {
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                for (int i = 0; i < s_SQLPart4Tying.Length; i++) wrkFormat.Append(s_SQLPart4Tying[i]);
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
-            strSQL.Append(wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
+                strSQL.Append(wrkBuff);
 
-            // ORDER BY ’Ç‰Á
-            for (int i = 0; i < s_SQLPart5.Length; i++) strSQL.Append(s_SQLPart5[i]);
-
+                // ORDER BY ’Ç‰Á
+                for (int i = 0; i < s_SQLPart5.Length; i++) strSQL.Append(s_SQLPart5[i]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -333,52 +339,59 @@
         /// <param name="strSQL"></param>
         private void CreateSQL02(ref StringBuilder strSQL)
         {
-            // �HŽ–�i’»�ó‘Ô‚ªŒ©�Ï’ñ�o‚æ‚è‘O‚Ì‚à‚Ì‚Æ�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì
-            int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
+            try
+            {
+                // �HŽ–�i’»�ó‘Ô‚ªŒ©�Ï’ñ�o‚æ‚è‘O‚Ì‚à‚Ì‚Æ�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì
+                int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.AppendFormat(" AND A.ConstructionStatusFlg < {0}", ProgressComplete);
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.AppendFormat(" AND A.ConstructionStatusFlg < {0}", ProgressComplete);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            strSQL.Append(" UNION ");
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.Append(" UNION ");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            // ORDER BY ’Ç‰Á
-            strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
-                                                (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
-                                                (int)GetData.SALESDEPDISPORDER + 1,
-                                                (int)GetData.SALESMANDISPORDER + 1,
-                                                (int)GetData.CONSTDEPDISPORDER + 1,
-                                                (int)GetData.CONSTMANDISPORDER + 1,
-                                                (int)GetData.CONSTRUCTIONCODE + 1);
+                // ORDER BY ’Ç‰Á
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.SALESDEPDISPORDER + 1,
+                                                    (int)GetData.SALESMANDISPORDER + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -389,33 +402,40 @@
         /// <param name="strSQL"></param>
         private void CreateSQL03(ref StringBuilder strSQL)
         {
-            // �ÏŽZŒ©�Ï�‘‚ª�³”F‚³‚ê‚Ä‚¢‚é‚à‚Ì
-            int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ÏŽZŒ©�Ï�‘�³”F")).Key;
+            try
+            {
+                // �ÏŽZŒ©�Ï�‘‚ª�³”F‚³‚ê‚Ä‚¢‚é‚à‚Ì
+                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ÏŽZŒ©�Ï�‘�³”F")).Key;
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            wrkFormat.Append(", PROCESSAPPROVAL A1");
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                wrkFormat.Append(", PROCESSAPPROVAL A1");
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE And A1.ApprovalCode = {0} And A1.SeqNo = 1", ApprovalCode);
-            strSQL.AppendFormat(" And A1.ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE And A1.ApprovalCode = {0} And A1.SeqNo = 1", ApprovalCode);
+                strSQL.AppendFormat(" And A1.ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
+                strSQL.Append(wrkBuff.ToString());
 
-            // ORDER BY ’Ç‰Á
-            for (int i = 0; i < s_SQLPart5.Length; i++) strSQL.Append(s_SQLPart5[i]);
+                // ORDER BY ’Ç‰Á
+                for (int i = 0; i < s_SQLPart5.Length; i++) strSQL.Append(s_SQLPart5[i]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -426,55 +446,62 @@
         /// <param name="strSQL"></param>
         private void CreateSQL04(ref StringBuilder strSQL)
         {
-            // �HŽ–�i’»�ó‘Ô‚ªŒ©�Ï’ñ�o‚æ‚è‘O‚Å�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Æ�A�ÏŽZ—\ŽZƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì
-            int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
+            try
+            {
+                // �HŽ–�i’»�ó‘Ô‚ªŒ©�Ï’ñ�o‚æ‚è‘O‚Å�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Æ�A�ÏŽZ—\ŽZƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì
+                int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
-            
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.AppendFormat(" AND A.ConstructionStatusFlg < {0}", ProgressComplete);
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" AND A.ConstructionStatusFlg < {0}", ProgressComplete);
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            strSQL.AppendFormat(" And A.ConstructionStatusFlg <= {0}", ProgressComplete);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            strSQL.Append(" UNION ");
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEBUDGET A1 WHERE A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" And A.ConstructionStatusFlg <= {0}", ProgressComplete);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                strSQL.Append(" UNION ");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEBUDGET A1 WHERE A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ORDER BY ’Ç‰Á
-            strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
-                                                (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
-                                                (int)GetData.SALESDEPDISPORDER + 1,
-                                                (int)GetData.SALESMANDISPORDER + 1,
-                                                (int)GetData.CONSTDEPDISPORDER + 1,
-                                                (int)GetData.CONSTMANDISPORDER + 1,
-                                                (int)GetData.CONSTRUCTIONCODE + 1);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
+
+                // ORDER BY ’Ç‰Á
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.SALESDEPDISPORDER + 1,
+                                                    (int)GetData.SALESMANDISPORDER + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -485,64 +512,71 @@
         /// <param name="strSQL"></param>
         private void CreateSQL05(ref StringBuilder strSQL)
         {
-            // �HŽ–—\ŽZƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Æ�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚Ä�HŽ–�i’»�ó‘Ô‚ª‰¼Žó’�ˆÈ�~�AŽ{�HŠJŽn‚æ‚è‘O‚Ì‚à‚Ì
-            int ProgressStart = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("‰¼ Žó ’�")).Key;
-            int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠJŽn")).Key;
-            int NoneOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("”ñ Žó ’�")).Key;
+            try
+            {
+                // �HŽ–—\ŽZƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Æ�ÏŽZŒ©�Ïƒf�[ƒ^‚ª�ì�¬‚³‚ê‚Ä‚¢‚Ä�HŽ–�i’»�ó‘Ô‚ª‰¼Žó’�ˆÈ�~�AŽ{�HŠJŽn‚æ‚è‘O‚Ì‚à‚Ì
+                int ProgressStart = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("‰¼ Žó ’�")).Key;
+                int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠJŽn")).Key;
+                int NoneOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("”ñ Žó ’�")).Key;
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            wrkFormat.Append(", PROCESSAPPROVAL A1");
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
-            wrkFormat.Append(" AND A.CONSTRUCTIONPERSONCODE != 0");
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                wrkFormat.Append(", PROCESSAPPROVAL A1");
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                wrkFormat.Append(" AND A.CONSTRUCTIONPERSONCODE != 0");
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.AppendFormat(" And {0} <= A.ConstructionStatusFlg", ProgressStart);
-            strSQL.AppendFormat(" And A.ConstructionStatusFlg < {0}", ProgressComplete);
-            strSQL.Append(" And A.ConstructionPersonCode != 0");
-            strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE AND A1.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
-            strSQL.AppendFormat(" AND SEQNO = 1 AND ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM ESTIMATEDATA B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" And {0} <= A.ConstructionStatusFlg", ProgressStart);
+                strSQL.AppendFormat(" And A.ConstructionStatusFlg < {0}", ProgressComplete);
+                strSQL.Append(" And A.ConstructionPersonCode != 0");
+                strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE AND A1.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
+                strSQL.AppendFormat(" AND SEQNO = 1 AND ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
-            
-            strSQL.Append(" UNION ");
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE AND A1.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
-            strSQL.AppendFormat(" AND SEQNO = 1 AND ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
-            strSQL.Append(" AND EXISTS (SELECT * FROM CONSTRUCTIONBUDGET C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.AppendFormat(" And A.ConstructionStatusFlg != {0}", NoneOrder);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                strSQL.Append(" UNION ");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.AppendFormat(" AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE AND A1.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
+                strSQL.AppendFormat(" AND SEQNO = 1 AND ApprovalStatus = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.Append(" AND EXISTS (SELECT * FROM CONSTRUCTIONBUDGET C WHERE C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" And A.ConstructionStatusFlg != {0}", NoneOrder);
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ORDER BY ’Ç‰Á
-            strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
-                                                (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
-                                                (int)GetData.SALESDEPDISPORDER + 1,
-                                                (int)GetData.SALESMANDISPORDER + 1,
-                                                (int)GetData.CONSTDEPDISPORDER + 1,
-                                                (int)GetData.CONSTMANDISPORDER + 1,
-                                                (int)GetData.CONSTRUCTIONCODE + 1);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
+
+                // ORDER BY ’Ç‰Á
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.SALESDEPDISPORDER + 1,
+                                                    (int)GetData.SALESMANDISPORDER + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -553,81 +587,88 @@
         /// <param name="strSQL"></param>
         private void CreateSQL06(ref StringBuilder strSQL)
         {
-            // �HŽ–—\ŽZƒf�[ƒ^‚ª�³”F‚³‚ê‚Ä‚¢‚Ä�HŽ–�i’»�ó‘Ô‚ª‰¼Žó’�ˆÈ�~�AŽ{�HŠJŽn‚æ‚è‘O‚Ì‚à‚Ì
-            int ProgressStart = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("‰¼ Žó ’�")).Key;
-            int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠJŽn")).Key;
-            int ProgressComplete2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠ®—¹")).Key;
+            try
+            {
+                // �HŽ–—\ŽZƒf�[ƒ^‚ª�³”F‚³‚ê‚Ä‚¢‚Ä�HŽ–�i’»�ó‘Ô‚ª‰¼Žó’�ˆÈ�~�AŽ{�HŠJŽn‚æ‚è‘O‚Ì‚à‚Ì
+                int ProgressStart = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("‰¼ Žó ’�")).Key;
+                int ProgressComplete = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠJŽn")).Key;
+                int ProgressComplete2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Ž{�HŠ®—¹")).Key;
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
-            wrkFormat.Append(", ''");
-            for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            wrkFormat.Append(", PROCESSAPPROVAL A1");
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
+                wrkFormat.Append(", ''");
+                for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                wrkFormat.Append(", PROCESSAPPROVAL A1");
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND NOT EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.AppendFormat(" And ((A.TYINGFLG != {0} AND ({1} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {2}))",
-                                                            (int)CommonDefine.BaseInfoTyingFlg.Tying, ProgressStart, ProgressComplete);
-            strSQL.AppendFormat(" OR (A.TYINGFLG = {0} AND ({1} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {2})))",
-                                                            (int)CommonDefine.BaseInfoTyingFlg.Tying, ProgressStart, ProgressComplete2);
-            strSQL.Append(" AND A.ConstructionPersonCode != 0");
-            strSQL.Append(" AND ((A.ConstructionCode IN ");
-            strSQL.Append(" (SELECT AA1.CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL AA1 WHERE (AA1.COMPANYCODE != 0 AND AA1.COMPANYCODE != -1)");
-            strSQL.Append(" GROUP BY AA1.CONSTRUCTIONCODE, AA1.COMPANYCODE");
-            strSQL.AppendFormat(" HAVING SUM(AA1.EXECUTIONAMOUNT) >= {0}))", CommonDefine.s_PrintOutPrice);
-            strSQL.Append(" AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE");
-            strSQL.AppendFormat(" AND A1.APPROVALCODE = {0} AND A1.SEQNO = 1", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
-            strSQL.AppendFormat(" AND A1.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
-            strSQL.Append(" OR A.JOINFLG = 1)");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND NOT EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" And ((A.TYINGFLG != {0} AND ({1} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {2}))",
+                                                                (int)CommonDefine.BaseInfoTyingFlg.Tying, ProgressStart, ProgressComplete);
+                strSQL.AppendFormat(" OR (A.TYINGFLG = {0} AND ({1} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {2})))",
+                                                                (int)CommonDefine.BaseInfoTyingFlg.Tying, ProgressStart, ProgressComplete2);
+                strSQL.Append(" AND A.ConstructionPersonCode != 0");
+                strSQL.Append(" AND ((A.ConstructionCode IN ");
+                strSQL.Append(" (SELECT AA1.CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL AA1 WHERE (AA1.COMPANYCODE != 0 AND AA1.COMPANYCODE != -1)");
+                strSQL.Append(" GROUP BY AA1.CONSTRUCTIONCODE, AA1.COMPANYCODE");
+                strSQL.AppendFormat(" HAVING SUM(AA1.EXECUTIONAMOUNT) >= {0}))", CommonDefine.s_PrintOutPrice);
+                strSQL.Append(" AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE");
+                strSQL.AppendFormat(" AND A1.APPROVALCODE = {0} AND A1.SEQNO = 1", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL.AppendFormat(" AND A1.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.Append(" OR A.JOINFLG = 1)");
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            wrkFormat = new StringBuilder();
-            for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
-            wrkFormat.Append(", DATE_FORMAT(A1.PRINTOUTDATE, '%Y/%m/%d')");
-            for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            wrkFormat.Append(", PURCHASEORDER A1");
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                wrkFormat = new StringBuilder();
+                for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
+                wrkFormat.Append(", DATE_FORMAT(A1.PRINTOUTDATE, '%Y/%m/%d')");
+                for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                wrkFormat.Append(", PURCHASEORDER A1");
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            strSQL.Append(" UNION ");
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.Append(" AND A.CONSTRUCTIONPERSONCODE != 0");
-            strSQL.Append(" AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND A1.SEQNO = 1)");
+                strSQL.Append(" UNION ");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.Append(" AND A.CONSTRUCTIONPERSONCODE != 0");
+                strSQL.Append(" AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND A1.SEQNO = 1)");
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            // ORDER BY ’Ç‰Á
-            strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
-                                                (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
-                                                (int)GetData.SALESDEPDISPORDER + 1,
-                                                (int)GetData.SALESMANDISPORDER + 1,
-                                                (int)GetData.CONSTDEPDISPORDER + 1,
-                                                (int)GetData.CONSTMANDISPORDER + 1,
-                                                (int)GetData.CONSTRUCTIONCODE + 1);
+                // ORDER BY ’Ç‰Á
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.SALESDEPDISPORDER + 1,
+                                                    (int)GetData.SALESMANDISPORDER + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -638,48 +679,104 @@
         /// <param name="strSQL"></param>
         private void CreateSQL07(ref StringBuilder strSQL)
         {
-            // ’�•¶�‘‚ª�³”F‚³‚ê‚Ä‚¢‚é‚à‚Ì
-            int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("’�•¶�‘�³”F")).Key;
+            try
+            {
+                // ’�•¶�‘‚ª�³”F‚³‚ê‚Ä‚¢‚é‚à‚Ì
+                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("’�•¶�‘�³”F")).Key;
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
-            StringBuilder wrkBuff = new StringBuilder();
-            CreateSecuritySQL(ref wrkBuff);
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
 
-            StringBuilder wrkFormat = new StringBuilder();
-            for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
-            wrkFormat.Append(", DATE_FORMAT(A2.PRINTOUTDATE, '%Y/%m/%d'), A1.ORDERNO");
-            for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
-            for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
-            for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
-            wrkFormat.Append(", PROCESSAPPROVAL A1, PURCHASEORDER A2");
-            for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat.Append(s_SQLPart1[i]);
+                wrkFormat.Append(", DATE_FORMAT(A2.PRINTOUTDATE, '%Y/%m/%d'), A1.ORDERNO");
+                for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+                wrkFormat.Append(", PROCESSAPPROVAL A1, PURCHASEORDER A2");
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
 
-            strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL.Append(" AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
-            strSQL.AppendFormat(" And (A.ConstructionCode = A1.ConstructionCode And A1.ApprovalCode = {0} And A1.SeqNo = 1 And A1.APPROVALSTATUS = {1})",
-                                                                                            ApprovalCode, (int)CommonDefine.ApprovalStatus.Approval);
-            strSQL.Append(" AND (A.CONSTRUCTIONCODE = A2.CONSTRUCTIONCODE AND A2.SEQNO = 1)");
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL.Append(" AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)");
+                strSQL.AppendFormat(" And (A.ConstructionCode = A1.ConstructionCode And A1.ApprovalCode = {0} And A1.SeqNo = 1 And A1.APPROVALSTATUS = {1})",
+                                                                                                ApprovalCode, (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.Append(" AND (A.CONSTRUCTIONCODE = A2.CONSTRUCTIONCODE AND A2.SEQNO = 1)");
 
-            // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetDepartmentString());
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
 
-            // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
-            strSQL.Append(GetPersonString());
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
 
-            // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
-            strSQL.Append(wrkBuff.ToString());
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñƒZƒbƒg
+                strSQL.Append(wrkBuff.ToString());
 
-            // ORDER BY ’Ç‰Á
-            strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
-                                                (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
-                                                (int)GetData.SALESDEPDISPORDER + 1,
-                                                (int)GetData.SALESMANDISPORDER + 1,
-                                                (int)GetData.CONSTDEPDISPORDER + 1,
-                                                (int)GetData.CONSTMANDISPORDER + 1,
-                                                (int)GetData.CONSTRUCTIONCODE + 1);
+                // ORDER BY ’Ç‰Á
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC, {5} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.SALESDEPDISPORDER + 1,
+                                                    (int)GetData.SALESMANDISPORDER + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
+        #region ŒŸ�õSQL�ì�¬:ˆÀ‘Sƒpƒgƒ��[ƒ‹�\�¿
+        /// <summary>
+        /// ˆÀ‘Sƒpƒgƒ��[ƒ‹�\�¿
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateSQL08(ref StringBuilder strSQL)
+        {
+            try
+            {
+                string strStat1 = CommonDefine.ProjectsStatus[(int)CommonDefine.StatNumArray.Status7];
+                string strStat2 = CommonDefine.ProjectsStatus[(int)CommonDefine.StatNumArray.Status8];
+                int nStat1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals(strStat1)).Key;
+                int nStat2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals(strStat1)).Key;
+
+                StringBuilder wrkFormat = new StringBuilder();
+                for (int i = 0; i < s_SQLPart1.Length; i++) wrkFormat.Append(s_SQLPart1[i]);
+                for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat.Append(s_SQLPart2[i]);
+                for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat.Append(s_SQLPart3[i]);
+
+                wrkFormat.Append(", constructionledger AS Ledger");
+
+                for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat.Append(s_SQLPart4[i]);
+
+                wrkFormat.AppendFormat(" AND ({0} <= A.CONSTRUCTIONSTATUSFLG AND A.CONSTRUCTIONSTATUSFLG <= {1})", nStat1, nStat2);
+                wrkFormat.Append(" AND Ledger.ConstructionCode = A.ConstructionCode");
+
+                strSQL.AppendFormat(wrkFormat.ToString(), numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+
+                // •”��‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetDepartmentString());
+
+                // ’S“–ŽÒ‚ª‘I‘ð‚³‚ê‚Ä‚¢‚é�ê�‡
+                strSQL.Append(GetPersonString());
+
+                // ƒZƒLƒ…ƒŠƒeƒB•¶Žš—ñŽæ“¾
+                StringBuilder wrkBuff = new StringBuilder();
+                CreateSecuritySQL(ref wrkBuff);
+                strSQL.Append(wrkBuff);
+
+                // ORDER BY ’Ç‰Á
+                for (int i = 0; i < s_SQLPart5.Length; i++) strSQL.Append(s_SQLPart5[i]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region ƒf�[ƒ^Žæ“¾SQL�ì�¬
         /// <summary>
         /// •\Ž¦—pƒf�[ƒ^Žæ“¾SQL�ì�¬
@@ -722,6 +819,10 @@
                         // ’�•¶�‘ˆó�ü
                         CreateSQL07(ref strSQL);
                         break;
+                    case (int)ClsExcute.ProcessExecuteNo.SafetyPatrol:
+                        // ˆÀ‘Sƒpƒgƒ��[ƒ‹�\�¿
+                        CreateSQL08(ref strSQL);
+                        break;
                     default:
                         strSQL.Append(" Where A.ConstructionCode = B.ConstructionCode");
                         break;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 237)
@@ -843,12 +843,11 @@
                 DataGridView dgv = dgvPayment;
 
                 dgv.Rows.Clear();
-                dgv.Rows.Add(9);
+                dgv.Rows.Add(8);
                 dgv.Rows[0].Visible = false;
                 dgv.Rows[1].Visible = false;
                 dgv.Rows[2].Visible = false;
                 dgv.Rows[3].Visible = false;
-                dgv.Rows[4].Visible = false;
 
                 // ƒwƒbƒ_�[�FƒZƒbƒg
                 dgv.EnableHeadersVisualStyles = false;
@@ -873,7 +872,6 @@
             OrderersDivision,
             OrderersCode,
             TargetDate,
-            SeqNo,
             DepositDate,
             CheckDate,
             DepositAmount,
@@ -893,20 +891,16 @@
             {
                 // “ü‹àƒf�[ƒ^‚ÌŽæ“¾
                 strSQL.Append("SELECT A.MAINCONSTRUCTIONCODE");
-                strSQL.Append(", C.ORDERERSDIVISION");
-                strSQL.Append(", C.ORDERERSCODE");
-                strSQL.Append(", C.TARGETDATE");
-                strSQL.Append(", C.SEQNO");
-                strSQL.Append(", DATE_FORMAT(C.DEPOSITDATE, '%Y/%m/%d') AS DEPOSITDATE");
+                strSQL.Append(", B.ORDERERSDIVISION");
+                strSQL.Append(", B.ORDERERSCODE");
+                strSQL.Append(", B.TARGETDATE");
+                strSQL.Append(", DATE_FORMAT(B.CONFIRMATIONDATE, '%Y/%m/%d') AS DEPOSITDATE");
                 strSQL.Append(", DATE_FORMAT(B.CONFIRMATIONDATE, '%Y/%m/%d') AS CONFIRMATIONDATE");
                 strSQL.Append(", B.DEPOSITAMOUNT");
                 strSQL.Append(", B.DIFFERENCEAMOUNT");
-                strSQL.Append(" FROM requestdatadetail AS A, depositdatadetail AS B, depositdata AS C");
+                strSQL.Append(" FROM requestdatadetail AS A, depositdatadetail AS B");
                 strSQL.AppendFormat(" WHERE A.MAINCONSTRUCTIONCODE = {0}", ConstrCode);
                 strSQL.Append(" AND  B.REQUESTNO = A.REQUESTNO");
-                strSQL.Append(" AND C.ORDERERSDIVISION = B.ORDERERSDIVISION");
-                strSQL.Append(" AND C.ORDERERSCODE = B.ORDERERSCODE");
-                strSQL.Append(" AND C.TARGETDATE = B.TARGETDATE");
             }
             catch (Exception ex)
             {
@@ -956,17 +950,16 @@
                     dgv.Rows[1].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.OrderersDivision]);
                     dgv.Rows[2].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.OrderersCode]);
                     dgv.Rows[3].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.TargetDate]);
-                    dgv.Rows[4].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.SeqNo]);
-                    dgv.Rows[5].Cells[i].Value = CommonMotions.cnvDate(CurRec[(int)GetDepositData.DepositDate]).ToShortDateString();
-                    dgv.Rows[6].Cells[i].Value = CommonMotions.cnvDate(CurRec[(int)GetDepositData.CheckDate]).ToShortDateString();
-                    dgv.Rows[7].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.DepositAmount]).ToString("#,0");
-                    dgv.Rows[8].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.DifferenceAmount]).ToString("#,0");
+                    dgv.Rows[4].Cells[i].Value = CommonMotions.cnvDate(CurRec[(int)GetDepositData.DepositDate]).ToShortDateString();
+                    dgv.Rows[5].Cells[i].Value = CommonMotions.cnvDate(CurRec[(int)GetDepositData.CheckDate]).ToShortDateString();
+                    dgv.Rows[6].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.DepositAmount]).ToString("#,0");
+                    dgv.Rows[7].Cells[i].Value = CommonMotions.cnvInt(CurRec[(int)GetDepositData.DifferenceAmount]).ToString("#,0");
 
+                    dgv.Rows[6].Cells[i].Style.Alignment = DataGridViewContentAlignment.MiddleRight;
                     dgv.Rows[7].Cells[i].Style.Alignment = DataGridViewContentAlignment.MiddleRight;
-                    dgv.Rows[8].Cells[i].Style.Alignment = DataGridViewContentAlignment.MiddleRight;
 
+                    if (strDefDate.Equals(CommonMotions.cnvString(dgv.Rows[3].Cells[i].Value))) dgv.Rows[3].Cells[i].Value = "";
                     if (strDefDate.Equals(CommonMotions.cnvString(dgv.Rows[4].Cells[i].Value))) dgv.Rows[4].Cells[i].Value = "";
-                    if (strDefDate.Equals(CommonMotions.cnvString(dgv.Rows[5].Cells[i].Value))) dgv.Rows[5].Cells[i].Value = "";
                 }
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs	(revision 237)
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using System.Collections;
 using System.ComponentModel;
 using System.Diagnostics;
 using System.Data;
@@ -6,7 +7,6 @@
 using System.Drawing;
 using System.Text;
 using System.Windows.Forms;
-using System.Collections;
 using System.Linq;
 
 using log4net;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs	(revision 237)
@@ -30,27 +30,27 @@
         /// </summary>
         private void InitializeComponent()
         {
-            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 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 dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = 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();
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.btnDataEntry = new System.Windows.Forms.Button();
@@ -261,7 +261,7 @@
             this.panel1.Controls.Add(this.lblLabel04);
             this.panel1.Location = new System.Drawing.Point(7, 40);
             this.panel1.Name = "panel1";
-            this.panel1.Size = new System.Drawing.Size(1330, 80);
+            this.panel1.Size = new System.Drawing.Size(1330, 70);
             this.panel1.TabIndex = 0;
             // 
             // pnlApproval
@@ -272,7 +272,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(1052, 35);
+            this.pnlApproval.Location = new System.Drawing.Point(1052, 30);
             this.pnlApproval.Name = "pnlApproval";
             this.pnlApproval.Size = new System.Drawing.Size(262, 34);
             this.pnlApproval.TabIndex = 117;
@@ -327,7 +327,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(1052, 35);
+            this.pnlApprovalButton.Location = new System.Drawing.Point(1052, 30);
             this.pnlApprovalButton.Name = "pnlApprovalButton";
             this.pnlApprovalButton.Size = new System.Drawing.Size(262, 34);
             this.pnlApprovalButton.TabIndex = 118;
@@ -374,7 +374,7 @@
             this.dTPCreateDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.dTPCreateDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
             this.dTPCreateDate.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.dTPCreateDate.Location = new System.Drawing.Point(866, 6);
+            this.dTPCreateDate.Location = new System.Drawing.Point(866, 4);
             this.dTPCreateDate.Name = "dTPCreateDate";
             this.dTPCreateDate.Size = new System.Drawing.Size(170, 26);
             this.dTPCreateDate.TabIndex = 116;
@@ -388,7 +388,7 @@
             this.label47.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label47.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label47.ForeColor = System.Drawing.Color.Black;
-            this.label47.Location = new System.Drawing.Point(236, 7);
+            this.label47.Location = new System.Drawing.Point(236, 5);
             this.label47.Name = "label47";
             this.label47.Size = new System.Drawing.Size(492, 25);
             this.label47.TabIndex = 115;
@@ -398,7 +398,7 @@
             // 
             this.textBox.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.textBox.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.textBox.Location = new System.Drawing.Point(1174, 6);
+            this.textBox.Location = new System.Drawing.Point(1174, 4);
             this.textBox.Name = "textBox";
             this.textBox.Size = new System.Drawing.Size(142, 26);
             this.textBox.TabIndex = 1;
@@ -411,7 +411,7 @@
             this.label3.BackColor = System.Drawing.Color.White;
             this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(128, 7);
+            this.label3.Location = new System.Drawing.Point(128, 5);
             this.label3.Name = "label3";
             this.label3.Size = new System.Drawing.Size(100, 25);
             this.label3.TabIndex = 113;
@@ -424,7 +424,7 @@
             this.label2.BackColor = System.Drawing.Color.SandyBrown;
             this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label2.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.label2.Location = new System.Drawing.Point(1052, 7);
+            this.label2.Location = new System.Drawing.Point(1052, 5);
             this.label2.Name = "label2";
             this.label2.Size = new System.Drawing.Size(114, 25);
             this.label2.TabIndex = 111;
@@ -437,7 +437,7 @@
             this.label4.BackColor = System.Drawing.Color.SandyBrown;
             this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label4.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.label4.Location = new System.Drawing.Point(744, 7);
+            this.label4.Location = new System.Drawing.Point(744, 5);
             this.label4.Name = "label4";
             this.label4.Size = new System.Drawing.Size(114, 25);
             this.label4.TabIndex = 111;
@@ -449,7 +449,7 @@
             this.label19.BackColor = System.Drawing.Color.Beige;
             this.label19.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label19.ForeColor = System.Drawing.Color.Black;
-            this.label19.Location = new System.Drawing.Point(6, 7);
+            this.label19.Location = new System.Drawing.Point(5, 5);
             this.label19.Name = "label19";
             this.label19.Size = new System.Drawing.Size(114, 25);
             this.label19.TabIndex = 109;
@@ -460,7 +460,7 @@
             // 
             this.label14.BackColor = System.Drawing.Color.SandyBrown;
             this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label14.Location = new System.Drawing.Point(486, 40);
+            this.label14.Location = new System.Drawing.Point(486, 35);
             this.label14.Name = "label14";
             this.label14.Size = new System.Drawing.Size(114, 25);
             this.label14.TabIndex = 35;
@@ -471,7 +471,7 @@
             // 
             this.label10.BackColor = System.Drawing.Color.SandyBrown;
             this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label10.Location = new System.Drawing.Point(6, 40);
+            this.label10.Location = new System.Drawing.Point(5, 35);
             this.label10.Name = "label10";
             this.label10.Size = new System.Drawing.Size(114, 25);
             this.label10.TabIndex = 35;
@@ -482,7 +482,7 @@
             // 
             this.label9.BackColor = System.Drawing.Color.SandyBrown;
             this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label9.Location = new System.Drawing.Point(236, 40);
+            this.label9.Location = new System.Drawing.Point(236, 35);
             this.label9.Name = "label9";
             this.label9.Size = new System.Drawing.Size(114, 25);
             this.label9.TabIndex = 35;
@@ -493,7 +493,7 @@
             // 
             this.label5.BackColor = System.Drawing.Color.SandyBrown;
             this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.Location = new System.Drawing.Point(744, 40);
+            this.label5.Location = new System.Drawing.Point(744, 35);
             this.label5.Name = "label5";
             this.label5.Size = new System.Drawing.Size(114, 25);
             this.label5.TabIndex = 35;
@@ -505,7 +505,7 @@
             this.label15.BackColor = System.Drawing.Color.White;
             this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label15.ForeColor = System.Drawing.Color.Black;
-            this.label15.Location = new System.Drawing.Point(128, 40);
+            this.label15.Location = new System.Drawing.Point(128, 35);
             this.label15.Name = "label15";
             this.label15.Size = new System.Drawing.Size(100, 25);
             this.label15.TabIndex = 36;
@@ -516,7 +516,7 @@
             this.label11.BackColor = System.Drawing.Color.White;
             this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label11.ForeColor = System.Drawing.Color.Black;
-            this.label11.Location = new System.Drawing.Point(608, 40);
+            this.label11.Location = new System.Drawing.Point(608, 35);
             this.label11.Name = "label11";
             this.label11.Size = new System.Drawing.Size(120, 25);
             this.label11.TabIndex = 36;
@@ -527,7 +527,7 @@
             this.label8.BackColor = System.Drawing.Color.White;
             this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label8.ForeColor = System.Drawing.Color.Black;
-            this.label8.Location = new System.Drawing.Point(358, 40);
+            this.label8.Location = new System.Drawing.Point(358, 35);
             this.label8.Name = "label8";
             this.label8.Size = new System.Drawing.Size(120, 25);
             this.label8.TabIndex = 36;
@@ -539,7 +539,7 @@
             this.lblLabel04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblLabel04.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblLabel04.ForeColor = System.Drawing.Color.Black;
-            this.lblLabel04.Location = new System.Drawing.Point(866, 40);
+            this.lblLabel04.Location = new System.Drawing.Point(866, 35);
             this.lblLabel04.Name = "lblLabel04";
             this.lblLabel04.Size = new System.Drawing.Size(170, 25);
             this.lblLabel04.TabIndex = 36;
@@ -623,7 +623,7 @@
             this.pnlBase.Controls.Add(this.label7);
             this.pnlBase.Controls.Add(this.lblCellTotal);
             this.pnlBase.Controls.Add(this.dgvAllDisplay);
-            this.pnlBase.Location = new System.Drawing.Point(12, 128);
+            this.pnlBase.Location = new System.Drawing.Point(12, 118);
             this.pnlBase.Name = "pnlBase";
             this.pnlBase.Size = new System.Drawing.Size(1320, 490);
             this.pnlBase.TabIndex = 36;
@@ -767,14 +767,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dataGridViewEX4.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dataGridViewEX4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dataGridViewEX4.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle22.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle22.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle22.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle22.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle22.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dataGridViewEX4.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle22;
             this.dataGridViewEX4.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dataGridViewEX4.ColumnHeadersVisible = false;
             this.dataGridViewEX4.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -801,8 +801,8 @@
             // 
             // dataGridViewTextBoxColumn18
             // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle23;
             this.dataGridViewTextBoxColumn18.Frozen = true;
             this.dataGridViewTextBoxColumn18.HeaderText = "â„–";
             this.dataGridViewTextBoxColumn18.Name = "dataGridViewTextBoxColumn18";
@@ -813,8 +813,8 @@
             // 
             // dataGridViewTextBoxColumn19
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle24;
             this.dataGridViewTextBoxColumn19.HeaderText = "æ™‚é–“å¸¯å›ºå®š";
             this.dataGridViewTextBoxColumn19.Name = "dataGridViewTextBoxColumn19";
             this.dataGridViewTextBoxColumn19.ReadOnly = true;
@@ -823,8 +823,8 @@
             // 
             // Column9
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle25;
             this.Column9.HeaderText = "æ™‚é–“å¸¯";
             this.Column9.Name = "Column9";
             this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -885,14 +885,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dataGridViewEX3.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dataGridViewEX3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle5.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dataGridViewEX3.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle26.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle26.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle26.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle26.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle26.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle26.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dataGridViewEX3.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle26;
             this.dataGridViewEX3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dataGridViewEX3.ColumnHeadersVisible = false;
             this.dataGridViewEX3.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -918,8 +918,8 @@
             // 
             // dataGridViewTextBoxColumn15
             // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn15.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn15.DefaultCellStyle = dataGridViewCellStyle27;
             this.dataGridViewTextBoxColumn15.Frozen = true;
             this.dataGridViewTextBoxColumn15.HeaderText = "â„–";
             this.dataGridViewTextBoxColumn15.Name = "dataGridViewTextBoxColumn15";
@@ -1039,14 +1039,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dataGridViewEX2.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dataGridViewEX2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle7.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dataGridViewEX2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle28.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle28.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle28.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dataGridViewEX2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
             this.dataGridViewEX2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dataGridViewEX2.ColumnHeadersVisible = false;
             this.dataGridViewEX2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -1075,8 +1075,8 @@
             // 
             // dataGridViewTextBoxColumn9
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn9.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn9.DefaultCellStyle = dataGridViewCellStyle29;
             this.dataGridViewTextBoxColumn9.Frozen = true;
             this.dataGridViewTextBoxColumn9.HeaderText = "â„–";
             this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9";
@@ -1095,8 +1095,8 @@
             // 
             // dataGridViewTextBoxColumn11
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn11.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn11.DefaultCellStyle = dataGridViewCellStyle30;
             this.dataGridViewTextBoxColumn11.HeaderText = "æ•°é‡�";
             this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11";
             this.dataGridViewTextBoxColumn11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1246,14 +1246,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dataGridViewEX1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dataGridViewEX1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle10.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dataGridViewEX1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle10;
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle31.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle31.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle31.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle31.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle31.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle31.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dataGridViewEX1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle31;
             this.dataGridViewEX1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dataGridViewEX1.ColumnHeadersVisible = false;
             this.dataGridViewEX1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -1284,8 +1284,8 @@
             // 
             // dataGridViewTextBoxColumn1
             // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle32;
             this.dataGridViewTextBoxColumn1.Frozen = true;
             this.dataGridViewTextBoxColumn1.HeaderText = "â„–";
             this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
@@ -1328,8 +1328,8 @@
             // 
             // dataGridViewTextBoxColumn6
             // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle33;
             this.dataGridViewTextBoxColumn6.HeaderText = "é–‹å§‹";
             this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
             this.dataGridViewTextBoxColumn6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1338,8 +1338,8 @@
             // 
             // dataGridViewTextBoxColumn7
             // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn7.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn7.DefaultCellStyle = dataGridViewCellStyle34;
             this.dataGridViewTextBoxColumn7.HeaderText = "";
             this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7";
             this.dataGridViewTextBoxColumn7.ReadOnly = true;
@@ -1349,8 +1349,8 @@
             // 
             // dataGridViewTextBoxColumn8
             // 
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle14;
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle35;
             this.dataGridViewTextBoxColumn8.HeaderText = "çµ‚äº†";
             this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
             this.dataGridViewTextBoxColumn8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1485,14 +1485,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvAllDisplay.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvAllDisplay.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle15;
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle36.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle36.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle36.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle36.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle36.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle36.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle36;
             this.dgvAllDisplay.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvAllDisplay.ColumnHeadersVisible = false;
             this.dgvAllDisplay.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -1525,8 +1525,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle16;
+            dataGridViewCellStyle37.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle37;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "â„–";
             this.Column1.Name = "Column1";
@@ -1546,8 +1546,8 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle17;
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle38;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "è�·ç¨®å��ç§°";
             this.Column2.Name = "Column2";
@@ -1567,8 +1567,8 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle18;
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle39;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "æ¥­è€…å��";
             this.Column3.Name = "Column3";
@@ -1579,8 +1579,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle19;
+            dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle40;
             this.Column4.HeaderText = "å½“æ—¥";
             this.Column4.Name = "Column4";
             this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1589,8 +1589,8 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle20;
+            dataGridViewCellStyle41.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle41;
             this.Column5.HeaderText = "ç´¯è¨ˆ";
             this.Column5.Name = "Column5";
             this.Column5.ReadOnly = true;
@@ -1616,8 +1616,8 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle21;
+            dataGridViewCellStyle42.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle42;
             this.Column8.HeaderText = "äººå“¡";
             this.Column8.Name = "Column8";
             this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -1707,7 +1707,7 @@
             // 
             this.PrintProgress.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.PrintProgress.Location = new System.Drawing.Point(33, 620);
+            this.PrintProgress.Location = new System.Drawing.Point(33, 616);
             this.PrintProgress.Name = "PrintProgress";
             this.PrintProgress.Size = new System.Drawing.Size(1278, 36);
             this.PrintProgress.TabIndex = 99;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs	(revision 237)
@@ -450,29 +450,27 @@
             {
                 StringBuilder strcmd = new StringBuilder();
 
-                strcmd.AppendFormat(" {0}PersonCode", Alias);
-                strcmd.AppendFormat(" ,{0}DisplayOrder", Alias);
-                strcmd.AppendFormat(" ,{0}PersonName", Alias);
+                bool bColFirst = true;
+                string strWork = string.Empty;
+                foreach (var gender in Enum.GetValues(typeof(IOMPersonInCharge.ColumnCnt)))
+                {
+                    strWork = gender.ToString();
+                    if (!bColFirst) strcmd.Append(", ");
+                    if (strWork.Equals("StartDate") || strWork.Equals("EndDate"))
+                    {
+                        strcmd.AppendFormat(" DATE_FORMAT({0}{1}, '%Y/%m/%d')", Alias, strWork);
+                    }
+                    else if (strWork.Equals("EntryDate") || strWork.Equals("UpdateDate"))
+                    {
+                        strcmd.AppendFormat(" DATE_FORMAT({0}{1}, '%Y/%m/%d %H:%i:%s')", Alias, strWork);
+                    }
+                    else
+                    {
+                        strcmd.AppendFormat(" {0}{1}", Alias, strWork);
+                    }
+                    bColFirst = false;
+                }
 
-                strcmd.AppendFormat(" ,DATE_FORMAT({0}StartDate, '%Y/%m/%d')", Alias);
-                strcmd.AppendFormat(" ,DATE_FORMAT({0}EndDate, '%Y/%m/%d')", Alias);
-                strcmd.AppendFormat(" ,{0}PassWord", Alias);
-                strcmd.AppendFormat(" ,{0}SecurityManagement", Alias);
-                strcmd.AppendFormat(" ,{0}SecCode", Alias);
-                strcmd.AppendFormat(" ,{0}MsgBackColor", Alias);
-                strcmd.AppendFormat(" ,{0}DisplayString", Alias);
-                strcmd.AppendFormat(" ,{0}DepartmentCode", Alias);
-                strcmd.AppendFormat(" ,{0}MonthlySalary", Alias);
-                strcmd.AppendFormat(" ,{0}YearSalary", Alias);
-                strcmd.AppendFormat(" ,{0}Qualification", Alias);
-                strcmd.AppendFormat(" ,{0}SealPrintName", Alias);
-                strcmd.AppendFormat(" ,{0}EmployeeClassFlg", Alias);
-                strcmd.AppendFormat(" ,{0}LedgerFlg", Alias);
-
-                strcmd.AppendFormat(" ,{0}DeleteFlg", Alias);
-                strcmd.AppendFormat(", DATE_FORMAT({0}EntryDate, '%Y/%m/%d %H:%i:%s')", Alias);
-                strcmd.AppendFormat(", DATE_FORMAT({0}UpdateDate, '%Y/%m/%d %H:%i:%s')", Alias);
-
                 return strcmd.ToString();
             }
             catch (Exception ex)
@@ -494,26 +492,18 @@
             try
             {
                 ArrayList arlist = new ArrayList();
-                
+
                 // æ‰¿èª�ãƒ‡ãƒ¼ã‚¿èª­è¾¼
-                string strSQLSeal = "SELECT";
-                strSQLSeal += CreatePersonSQL("B.");
-                // æ–°ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿å¯¾å¿œæ¸ˆã�¿ã�‹ã‚’ç¢ºèª�ã�™ã‚‹
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
+                StringBuilder strSQLSeal = new StringBuilder();
+                strSQLSeal.Append("SELECT");
+                strSQLSeal.Append(CreatePersonSQL("B."));
+                strSQLSeal.Append(", C.SECRANK FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, SECURITYMASTER C");
+                strSQLSeal.Append(paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.EstimateApproval, CommonDefine.s_Default_OrderNo));
+                strSQLSeal.Append(" AND A.PERSONCODE = B.PERSONCODE");
+                strSQLSeal.Append(" AND C.SECCODE = B.SECCODE");
+                strSQLSeal.Append(" Order By B.SECURITYMANAGEMENT ASC");
+                if (!paDB.ExecuteReader(strSQLSeal.ToString(), ref arlist)) return;
 
-                    strSQLSeal += " FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B";
-                }
-                else
-                {
-                    strSQLSeal += ", C.SECRANK FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, SECURITYMASTER C";
-                }
-                strSQLSeal += paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.EstimateApproval, CommonDefine.s_Default_OrderNo);
-                strSQLSeal += " AND A.PERSONCODE = B.PERSONCODE";
-                if (CommonMotions.LoginUserData.SecCode != 0) strSQLSeal += " AND C.SECCODE = B.SECCODE";
-                strSQLSeal += " Order By B.SECURITYMANAGEMENT ASC";
-                if (!paDB.ExecuteReader(strSQLSeal, ref arlist)) return;
-
                 // å�°åˆ·ãƒ†ãƒ¼ãƒ–ãƒ«ä½œæˆ�
                 int[] PorsonCode = new int[4] { 0, 0, 0, 0 };
                 List<string> NameTable = new List<string>();
@@ -532,33 +522,23 @@
                     picDB.Reader2Struct(readObj, ref PersonRec);
 
                     bool SelData = false;
-                    // æ–°ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿å¯¾å¿œæ¸ˆã�¿ã�‹ã‚’ç¢ºèª�ã�™ã‚‹
-                    if (CommonMotions.LoginUserData.SecCode == 0)
+
+                    // ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿ãƒ�ã‚§ãƒƒã‚¯
+
+                    int SecRank = CommonMotions.cnvInt(readObj[PersonDataCnt]);
+                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // ç‰¹åˆ¥æ¨©é™�
+                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // çµ±æ‹¬è€…æ¨©é™�
+                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // æ‰€å±žé•·æ¨©é™�
+
+                    // æœ€é«˜è²¬ä»»è€…ãƒ»çµ±æ‹¬è²¬ä»»è€…ãƒ»æ‰€å±žé•·ã�‹ã�©ã�†ã�‹ã‚’èª¿ã�¹ã‚‹
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                        || SecRank == CommonDefine.SecurityRankList[SRank].Key
+                        || SecRank == CommonDefine.SecurityRankList[FRank].Key
+                        || SecRank == CommonDefine.SecurityRankList[LRank].Key)
                     {
-                        // æœ€é«˜è²¬ä»»è€…ãƒ»çµ±æ‹¬è²¬ä»»è€…ãƒ»æ‰€å±žé•·ã�‹ã�©ã�†ã�‹ã‚’èª¿ã�¹ã‚‹
-                        if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key ||
-                            PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key ||
-                                PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                        {
-                            SelData = true;
-                        }
+                        SelData = true;
                     }
-                    else
-                    {
-                        int SecRank = CommonMotions.cnvInt(readObj[PersonDataCnt]);
-                        int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // ç‰¹åˆ¥æ¨©é™�
-                        int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // çµ±æ‹¬è€…æ¨©é™�
-                        int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // æ‰€å±žé•·æ¨©é™�
 
-                        // æœ€é«˜è²¬ä»»è€…ãƒ»çµ±æ‹¬è²¬ä»»è€…ãƒ»æ‰€å±žé•·ã�‹ã�©ã�†ã�‹ã‚’èª¿ã�¹ã‚‹
-                        if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
-                            || SecRank == CommonDefine.SecurityRankList[SRank].Key
-                            || SecRank == CommonDefine.SecurityRankList[FRank].Key
-                            || SecRank == CommonDefine.SecurityRankList[LRank].Key)
-                        {
-                            SelData = true;
-                        }
-                    }
                     if (SelData)
                     {
                         // ã‚³ãƒ¼ãƒ‰ã�¨å��å‰�ã�¨å½¹è�·ã‚’å�–å¾—ã�™ã‚‹
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(revision 237)
@@ -300,6 +300,11 @@
         /// •\Ž¦Žž‚Ìƒf�[ƒ^Œ��”
         /// </summary>
         private int m_Select_DataCount = 0;
+
+        /// <summary>
+        /// ’S“–ŽÒ�³”F�î•ñ
+        /// </summary>
+        PaymentApprovalInfo m_PaInfo = null;        
         #endregion
 
   
@@ -529,6 +534,24 @@
         /// <param name="e"></param>
         private void FrmRequestSummaryList_Load(object sender, EventArgs e)
         {
+            // ’S“–ŽÒ�³”F�î•ñ‚ÌŽæ“¾ // TODO
+            if (ClsExcute.ProcControlPara.Count > 0)
+            {
+                for (int i = 0; i < ClsExcute.ProcControlPara.Count; i++)
+                {
+                    if ((ClsExcute.ProcControlPara[i].ArrayParameter != null)
+                        && (ClsExcute.ProcControlPara[i].ArrayParameter.Count > 0))
+                    {
+                        ArrayList obj = ClsExcute.ProcControlPara[i].ArrayParameter[0];
+                        m_PaInfo = (PaymentApprovalInfo)obj[0];
+                        if (m_PaInfo is PaymentApprovalInfo != true)
+                        {
+                            m_PaInfo = null;
+                        }
+                    }
+                }
+            }
+
             // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
             LoadTargetMonth(ref m_Payday);
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(revision 237)
@@ -1869,7 +1869,6 @@
 
             List<ShoninData> lstDefaultShonin = new List<ShoninData>();
             List<PaymentApprovalInfo> PaIList = new List<PaymentApprovalInfo>();
-            PaymentApprovalInfo PaInfo = null;
 
             IOConstructionBaseInfo IoCbi = new IOConstructionBaseInfo();
             IOMPersonInCharge IoMpic = new IOMPersonInCharge();
@@ -1878,24 +1877,6 @@
             string KojiTanto = "", KojiTantoCode = "";
             int ConstrDepartmentCode = 0;
 
-            // ‹N“®Œ³‚ÌŠm”F // TODO
-            if (ClsExcute.ProcControlPara.Count > 0)
-            {
-                for (int i = 0; i < ClsExcute.ProcControlPara.Count; i++)
-                {
-                    if ((ClsExcute.ProcControlPara[i].ArrayParameter != null) 
-                        && (ClsExcute.ProcControlPara[i].ArrayParameter.Count > 0))
-                    {
-                        ArrayList obj = ClsExcute.ProcControlPara[i].ArrayParameter[0];
-                        PaInfo = (PaymentApprovalInfo)obj[0];
-                        if (PaInfo is PaymentApprovalInfo != true)
-                        {
-                            PaInfo = null;
-                        }
-                    }
-                }
-            }
-
             try
             {
 
@@ -1926,21 +1907,21 @@
 
                 // SQL�ì�¬
                 StringBuilder sql = new StringBuilder();
-                if (PaInfo != null)
+                if (m_PaInfo != null)
                 {
                     // Žx•¥�³”F�î•ñƒf�[ƒ^–³ŽžSQL�ì�¬
-                    CreateSQLType1(PaInfo, ref sql);
+                    CreateSQLType1(m_PaInfo, ref sql);
                 }
                 else
                 {
                     // Žx•¥�³”F�î•ñƒf�[ƒ^—LŽžSQL�ì�¬
-                    CreateSQLType2(PaInfo, ref sql);
+                    CreateSQLType2(m_PaInfo, ref sql);
                 }
 
                 if (dgvCompany.Visible == true)         // ‹ÆŽÒ’PˆÊ•\Ž¦
                 {
-                    sql.AppendLine("order by CompanyCode ASC, SeqNo DESC, ");
-                    sql.AppendLine("case when ConstructionCode = 0 Then  2099999999 else LineCount end ");
+                    sql.AppendLine("order by CompanyCode ASC, SeqNo ASC, LineCount ASC ");
+                    //sql.AppendLine("case when ConstructionCode = 0 Then  2099999999 else LineCount end ");
                 }
                 else if (dgvProject.Visible == true)    // Œ»�ê’PˆÊ•\Ž¦
                 {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.cs	(revision 237)
@@ -0,0 +1,522 @@
+using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Linq;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmSafetyPatrol : Form
+    {
+        #region Žg—p’è‹`
+        //log4netƒ�ƒO‚ðŽg—p‚·‚é
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region ’è�”
+        #region ƒOƒŠƒbƒhƒJƒ‰ƒ€
+        /// <summary>
+        /// ƒOƒŠƒbƒhƒJƒ‰ƒ€
+        /// </summary>
+        private enum GridColumn
+        {
+            No = 0,
+            SubCnstrCode,
+            SubCnstrName,
+            ChkVal,
+        }
+        #endregion
+
+        #endregion
+
+        #region •Ï�”
+        #region ’S“–ŽÒƒR�[ƒh
+        /// <summary>
+        /// ’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        private int m_PersonCode = 0;
+        #endregion
+
+        #region �HŽ–ƒR�[ƒh
+        /// <summary>
+        /// �HŽ–ƒR�[ƒh
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        #endregion
+
+        #region ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// <summary>
+        /// ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// </summary>
+        private bool m_EditLock = false;
+        #endregion
+
+        #region ŠY“–�HŽ–Šî–{�î•ñ
+        /// <summary>
+        /// ŠY“–�HŽ–Šî–{�î•ñ
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+        #endregion
+
+        #region ƒf�[ƒ^•Ï�Xƒtƒ‰ƒO
+        /// <summary>
+        /// ƒf�[ƒ^•Ï�Xƒtƒ‰ƒO
+        /// </summary>
+        private bool m_DataChangeFlg = false;
+
+        #endregion
+
+        #region ‹¤’Ê�ˆ—��Ý’è
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        /// <summary>
+        /// ƒTƒuƒtƒH�[ƒ€‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_SubForm = false;
+        /// <summary>
+        /// ŒÄ�oŒ³�I—¹ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_ParentEnd = false;
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        #endregion
+        #endregion
+
+        #region ƒvƒ�ƒpƒeƒB
+        #region ’S“–ŽÒƒR�[ƒh
+        /// <summary>
+        /// ’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        public int PersonCode
+        {
+            get { return m_PersonCode; }
+            set { m_PersonCode = value; }
+        }
+        #endregion
+
+        #region �HŽ–”Ô�†
+        /// <summary>
+        /// �HŽ–”Ô�†
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        #endregion
+
+        #region ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// <summary>
+        /// ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region ‹¤’Ê�ˆ—��Ý’è
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        /// <summary>
+        /// ƒTƒuƒtƒH�[ƒ€ƒtƒ‰ƒO
+        /// </summary>
+        public bool SubForm
+        {
+            get { return m_SubForm; }
+            set { m_SubForm = value; }
+        }
+        /// <summary>
+        /// ŒÄ�oŒ³�I—¹ƒtƒ‰ƒO
+        /// </summary>
+        public bool ParentEnd
+        {
+            get { return m_ParentEnd; }
+            set { m_ParentEnd = value; }
+        }
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        #endregion
+        #endregion
+
+        #region ƒRƒ“ƒXƒgƒ‰ƒNƒ^
+        public FrmSafetyPatrol()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region ƒfƒXƒgƒ‰ƒNƒ^
+        ~FrmSafetyPatrol()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �~ƒ{ƒ^ƒ“
+        /// <summary>
+        /// �~ƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSafetyPatrol_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_DataChangeFlg)
+            {
+                if (MessageBox.Show("ƒf�[ƒ^‚É•Ï�X‚ª‚ ‚è‚Ü‚·�A“o˜^‚¹‚¸‚É�I—¹‚µ‚Ä‚æ‚ë‚µ‚¢‚Å‚·‚©�H�B", "�I—¹Šm”F"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+
+            // ‘Oƒvƒ�ƒZƒX‚É–ß‚é
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region �I—¹ƒ{ƒ^ƒ“
+        /// <summary>
+        /// �I—¹ƒ{ƒ^ƒ“ƒNƒŠƒbƒN
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region ƒtƒH�[ƒ€ƒ��[ƒh
+        /// <summary>
+        /// �‰ŠúƒtƒH�[ƒ€ƒ��[ƒh
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSafetyPatrolList_Load(object sender, EventArgs e)
+        {
+            // �HŽ–�î•ñŽæ“¾
+            if (!GetBaseInfoData())
+            {
+                MessageBox.Show("�HŽ–Šî–{�î•ñ‚ª‘¶�Ý‚µ‚Ü‚¹‚ñ", "ƒGƒ‰�[•\Ž¦", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                this.Close();
+                return;
+            }
+
+            // ŽžŠÔƒRƒ“ƒ{ƒZƒbƒg
+            SetTimeComboBox();
+
+            // �‰Šú•\Ž¦
+            InitDataLoad();
+
+            // �\�¿�E�³”F•\Ž¦�ˆ—�
+            InitApprovalDisplay();
+
+            // �³”F‰æ–Ê‚Ì�u�³”F‘Î�Ûƒf�[ƒ^‚ðŒ©‚é�v‚©‚ç‚Ì‹N“®Žž‚Í�³”Fƒ{ƒ^ƒ“‚Ì•\Ž¦‚ª‚ ‚é
+            bool bApproval = ClsApprovalPermission.ExceApprovalScreen();
+            if (bApproval)
+            {
+                // �HŽ–ˆÄŒ�‚ÌŠÇ—�•”��‚ðŽæ“¾‚·‚é
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionTheDepartment(m_ConstructionCode);
+                // �³”F‘Î�ÛƒR�[ƒh‚ðŽæ“¾‚·‚é
+                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                // ˆÄŒ�‚É‘Î‚µ‚Ä�\�¿‚ª‚³‚ê‚Ä‚¢‚é‚©‚ðŠm”F‚·‚é
+                bool Pettition = ClsApprovalPermission.CheckProcessPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
+                // ƒ�ƒOƒCƒ“ŽÒ‚ª�³”FŽÒ‚©‚ðŠm”F‚·‚é
+                bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
+            }
+
+            // ŽQ�Æƒ‚�[ƒh
+            if (m_EditLock)
+            {
+                // ‘S‚Ä‚ÌƒRƒ“ƒgƒ��[ƒ‹ƒ�ƒbƒN
+                SeeModeLock();
+            }
+
+            // •Ï�Xƒtƒ‰ƒOOFF
+            m_DataChangeFlg = false;
+        }
+        #endregion
+
+        #region ƒtƒH�[ƒ€KeyDown
+        /// <summary>
+        /// EntryƒL�[‚Å‚ÌˆÚ“®�ˆ—�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSafetyPatrolList_KeyDown(object sender, KeyEventArgs e)
+        {
+            //EnterƒL�[‚ª‰Ÿ‚³‚ê‚Ä‚¢‚é‚©Šm”F
+            //Alt‚©CtrlƒL�[‚ª‰Ÿ‚³‚ê‚Ä‚¢‚éŽž‚Í–³Ž‹‚·‚é
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //‚ ‚½‚©‚àTabƒL�[‚ª‰Ÿ‚³‚ê‚½‚©‚Ì‚æ‚¤‚É‚·‚é
+                //Shift‚ª‰Ÿ‚³‚ê‚Ä‚¢‚éŽž‚Í‘O‚ÌƒRƒ“ƒgƒ��[ƒ‹‚ÌƒtƒH�[ƒJƒX‚ðˆÚ“®
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0ˆÈ�~
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+        #region �\�¿ƒ{ƒ^ƒ“‰Ÿ‰º
+        /// <summary>
+        /// �\�¿ƒ{ƒ^ƒ“‰Ÿ‰º
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnPetition_Click(object sender, EventArgs e)
+        {
+            IODailyDataConstruction ConstDB = new IODailyDataConstruction();
+            try
+            {
+                // �ÏŽZ—\ŽZƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í“o˜^‚·‚é
+                DateTime dtWrk = CommonMotions.cnvDate(dtPatrolDate.Text);
+                string strSQL = ConstDB.CreatePrimarykeyString(m_PersonCode, dtWrk, m_ConstructionCode);
+                DailyDataConstruction DataRec = new DailyDataConstruction();
+                if (!ConstDB.SelectAction(strSQL, ref DataRec)) m_DataChangeFlg = true;
+
+                // ƒf�[ƒ^•Ï�X—LŽž‚Íƒf�[ƒ^“o˜^
+                if (m_DataChangeFlg)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // ‹N“®”Ô�†
+                int NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ApprovalScreen);
+
+                // �HŽ–”Ô�†
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ConstructionBaseInfo.ConstructionCode);
+
+                // �³”F‹@”\”Ô�†
+                int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
+
+                // Žó•t”Ô�†
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
+                // �eƒtƒH�[ƒ€�I—¹
+                m_ParentEnd = true;
+
+                // Ž©ƒtƒH�[ƒ€�I—¹
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                ConstDB.close(); ConstDB = null;
+            }
+        }
+        #endregion
+
+        #region �³”Fƒ{ƒ^ƒ“‰Ÿ‰º
+        /// <summary>
+        /// �³”Fƒ{ƒ^ƒ“‰Ÿ‰º
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnApproval_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // ƒf�[ƒ^•Ï�X—LŽž‚Íƒf�[ƒ^“o˜^
+                if (m_DataChangeFlg)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // ‹N“®”Ô�†
+                int NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ApprovalScreen);
+
+                // �HŽ–”Ô�†
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ConstructionBaseInfo.ConstructionCode);
+
+                // �³”F‹@”\”Ô�†
+                int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
+
+                // Žó•t”Ô�†
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
+                // �eƒtƒH�[ƒ€�I—¹
+                m_ParentEnd = true;
+
+                // Ž©ƒtƒH�[ƒ€�I—¹
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �³”Fƒpƒlƒ‹�ipnlApproval�j�³”Fƒ{ƒ^ƒ“
+        /// <summary>
+        /// �³”Fƒpƒlƒ‹�ipnlApproval�j�³”Fƒ{ƒ^ƒ“
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnOnApproval_Click(object sender, EventArgs e)
+        {
+            FrmApprovalScreen frm = new FrmApprovalScreen();
+            try
+            {
+                if (MessageBox.Show("ˆÄŒ�‚ð�³”F‚µ‚Ü‚·�A‚æ‚ë‚µ‚¢‚Å‚·‚©�H�B", "�³”FŠm”F"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
+
+                // �HŽ–”Ô�†
+                frm.ConstructionCode = m_ConstructionCode;
+                // �³”F‹@”\”Ô�†ƒZƒbƒg
+                frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                // Žó•t”Ô�†
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
+
+                // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
+                if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
+                {
+                    MessageBox.Show("�³”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B", "�³”FƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // �eƒtƒH�[ƒ€�I—¹
+                m_ParentEnd = true;
+
+                // ƒ�ƒjƒ…�[‚Ö–ß‚é
+                ClsExcute.ClearProcess();
+
+                // ‰æ–ÊƒNƒ��[ƒY
+                this.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region �³”Fƒpƒlƒ‹�ipnlApproval�j•Û—¯ƒ{ƒ^ƒ“
+        /// <summary>
+        /// �³”Fƒpƒlƒ‹�ipnlApproval�j•Û—¯ƒ{ƒ^ƒ“
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnOnHold_Click(object sender, EventArgs e)
+        {
+            FrmApprovalScreen frm = new FrmApprovalScreen();
+            try
+            {
+                if (MessageBox.Show("ˆÄŒ�‚ð•Û—¯‚Æ‚µ‚Ü‚·�A‚æ‚ë‚µ‚¢‚Å‚·‚©�H�B", "•Û—¯Šm”F"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
+
+                // �HŽ–”Ô�†
+                frm.ConstructionCode = m_ConstructionCode;
+                // �³”F‹@”\”Ô�†ƒZƒbƒg
+                frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                // Žó•t”Ô�†
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
+
+                // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
+                if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
+                {
+                    MessageBox.Show("•Û—¯‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B", "•Û—¯ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // �eƒtƒH�[ƒ€�I—¹
+                m_ParentEnd = true;
+
+                // ƒ�ƒjƒ…�[‚Ö–ß‚é
+                ClsExcute.ClearProcess();
+
+                // ‰æ–ÊƒNƒ��[ƒY
+                this.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region �³”Fƒpƒlƒ‹�ipnlApproval�j•s�³”Fƒ{ƒ^ƒ“
+        /// <summary>
+        /// �³”Fƒpƒlƒ‹�ipnlApproval�j•s�³”Fƒ{ƒ^ƒ“
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnNotApproval_Click(object sender, EventArgs e)
+        {
+            FrmApprovalScreen frm = new FrmApprovalScreen();
+            try
+            {
+                if (MessageBox.Show("ˆÄŒ�‚ð•s�³”F‚µ‚Ü‚·�A‚æ‚ë‚µ‚¢‚Å‚·‚©�H�B", "•s�³”FŠm”F"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
+
+                // �HŽ–”Ô�†
+                frm.ConstructionCode = m_ConstructionCode;
+                // �³”F‹@”\”Ô�†ƒZƒbƒg
+                frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                // Žó•t”Ô�†
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
+
+                // �\�¿�E�³”FƒŒƒR�[ƒh�X�V
+                if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
+                {
+                    MessageBox.Show("•s�³”F‚ÉŽ¸”s‚µ‚Ü‚µ‚½�B", "•s�³”FƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // �eƒtƒH�[ƒ€�I—¹
+                m_ParentEnd = true;
+
+                // ƒ�ƒjƒ…�[‚Ö–ß‚é
+                ClsExcute.ClearProcess();
+                // ‰æ–ÊƒNƒ��[ƒY
+                this.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.designer.cs	(revision 237)
@@ -0,0 +1,498 @@
+ï»¿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSafetyPatrol
+    {
+        /// <summary>
+        /// å¿…è¦�ã�ªãƒ‡ã‚¶ã‚¤ãƒŠå¤‰æ•°ã�§ã�™ã€‚
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// ä½¿ç”¨ä¸­ã�®ãƒªã‚½ãƒ¼ã‚¹ã‚’ã�™ã�¹ã�¦ã‚¯ãƒªãƒ¼ãƒ³ã‚¢ãƒƒãƒ—ã�—ã�¾ã�™ã€‚
+        /// </summary>
+        /// <param name="disposing">ãƒžãƒ�ãƒ¼ã‚¸ ãƒªã‚½ãƒ¼ã‚¹ã�Œç ´æ£„ã�•ã‚Œã‚‹å ´å�ˆ trueã€�ç ´æ£„ã�•ã‚Œã�ªã�„å ´å�ˆã�¯ false ã�§ã�™ã€‚</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows ãƒ•ã‚©ãƒ¼ãƒ  ãƒ‡ã‚¶ã‚¤ãƒŠã�§ç”Ÿæˆ�ã�•ã‚Œã�Ÿã‚³ãƒ¼ãƒ‰
+
+        /// <summary>
+        /// ãƒ‡ã‚¶ã‚¤ãƒŠ ã‚µãƒ�ãƒ¼ãƒˆã�«å¿…è¦�ã�ªãƒ¡ã‚½ãƒƒãƒ‰ã�§ã�™ã€‚ã�“ã�®ãƒ¡ã‚½ãƒƒãƒ‰ã�®å†…å®¹ã‚’
+        /// ã‚³ãƒ¼ãƒ‰ ã‚¨ãƒ‡ã‚£ã‚¿ã�§å¤‰æ›´ã�—ã�ªã�„ã�§ã��ã� ã�•ã�„ã€‚
+        /// </summary>
+        private void InitializeComponent()
+        {
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = 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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.lblLabel01 = new System.Windows.Forms.Label();
+            this.lblConstrCode = new System.Windows.Forms.Label();
+            this.lblConstructionCodelabel = new System.Windows.Forms.Label();
+            this.dtPatrolDate = new System.Windows.Forms.DateTimePicker();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.lblLabel02 = new System.Windows.Forms.Label();
+            this.pnlApproval = new System.Windows.Forms.Panel();
+            this.lblApprovalCount = new System.Windows.Forms.Label();
+            this.btnPetition = new System.Windows.Forms.Button();
+            this.btnApproval = new System.Windows.Forms.Button();
+            this.pnlApprovalButton = new System.Windows.Forms.Panel();
+            this.btnOnApproval = new System.Windows.Forms.Button();
+            this.btnNotApproval = new System.Windows.Forms.Button();
+            this.btnOnHold = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.textBox1 = new System.Windows.Forms.TextBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.panel2 = new System.Windows.Forms.Panel();
+            this.cmbTime = new System.Windows.Forms.ComboBox();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.pnlApproval.SuspendLayout();
+            this.pnlApprovalButton.SuspendLayout();
+            this.panel1.SuspendLayout();
+            this.panel2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(655, 554);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 5;
+            this.btnEnd.Text = "çµ‚ã€€äº†";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label1.BackColor = System.Drawing.Color.White;
+            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(190, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(400, 20);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "å®‰ å…¨ ãƒ‘ ãƒˆ ãƒ­ ãƒ¼ ãƒ« ç”³ è«‹";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblLabel01
+            // 
+            this.lblLabel01.BackColor = System.Drawing.Color.White;
+            this.lblLabel01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel01.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel01.Location = new System.Drawing.Point(127, 5);
+            this.lblLabel01.Name = "lblLabel01";
+            this.lblLabel01.Size = new System.Drawing.Size(635, 25);
+            this.lblLabel01.TabIndex = 17;
+            this.lblLabel01.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblConstrCode
+            // 
+            this.lblConstrCode.BackColor = System.Drawing.Color.White;
+            this.lblConstrCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblConstrCode.Font = new System.Drawing.Font("Century", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lblConstrCode.ForeColor = System.Drawing.Color.Black;
+            this.lblConstrCode.Location = new System.Drawing.Point(10, 5);
+            this.lblConstrCode.Name = "lblConstrCode";
+            this.lblConstrCode.Size = new System.Drawing.Size(110, 25);
+            this.lblConstrCode.TabIndex = 16;
+            this.lblConstrCode.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblConstrCode.Visible = false;
+            // 
+            // lblConstructionCodelabel
+            // 
+            this.lblConstructionCodelabel.BackColor = System.Drawing.Color.LightSkyBlue;
+            this.lblConstructionCodelabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblConstructionCodelabel.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.lblConstructionCodelabel.Location = new System.Drawing.Point(5, 5);
+            this.lblConstructionCodelabel.Name = "lblConstructionCodelabel";
+            this.lblConstructionCodelabel.Size = new System.Drawing.Size(114, 25);
+            this.lblConstructionCodelabel.TabIndex = 18;
+            this.lblConstructionCodelabel.Text = "å·¥äº‹å��ç§°";
+            this.lblConstructionCodelabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dtPatrolDate
+            // 
+            this.dtPatrolDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dtPatrolDate.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dtPatrolDate.Location = new System.Drawing.Point(127, 4);
+            this.dtPatrolDate.Name = "dtPatrolDate";
+            this.dtPatrolDate.Size = new System.Drawing.Size(180, 26);
+            this.dtPatrolDate.TabIndex = 1;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.Black;
+            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.LightSkyBlue;
+            this.label4.Location = new System.Drawing.Point(5, 5);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(114, 25);
+            this.label4.TabIndex = 117;
+            this.label4.Text = "ç”³è«‹æ—¥æ™‚";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.LightSkyBlue;
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.label5.Location = new System.Drawing.Point(5, 32);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(114, 25);
+            this.label5.TabIndex = 120;
+            this.label5.Text = "ç”³ã€€è«‹ã€€è€…";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblLabel02
+            // 
+            this.lblLabel02.BackColor = System.Drawing.Color.White;
+            this.lblLabel02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel02.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLabel02.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel02.Location = new System.Drawing.Point(127, 32);
+            this.lblLabel02.Name = "lblLabel02";
+            this.lblLabel02.Size = new System.Drawing.Size(170, 25);
+            this.lblLabel02.TabIndex = 121;
+            this.lblLabel02.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // pnlApproval
+            // 
+            this.pnlApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.pnlApproval.BackColor = System.Drawing.Color.White;
+            this.pnlApproval.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            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(500, 0);
+            this.pnlApproval.Name = "pnlApproval";
+            this.pnlApproval.Size = new System.Drawing.Size(262, 34);
+            this.pnlApproval.TabIndex = 122;
+            // 
+            // lblApprovalCount
+            // 
+            this.lblApprovalCount.BackColor = System.Drawing.Color.Black;
+            this.lblApprovalCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblApprovalCount.ForeColor = System.Drawing.Color.White;
+            this.lblApprovalCount.Location = new System.Drawing.Point(205, 3);
+            this.lblApprovalCount.Name = "lblApprovalCount";
+            this.lblApprovalCount.Size = new System.Drawing.Size(50, 24);
+            this.lblApprovalCount.TabIndex = 1;
+            this.lblApprovalCount.Text = "4/5";
+            this.lblApprovalCount.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnPetition
+            // 
+            this.btnPetition.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnPetition.BackColor = System.Drawing.Color.White;
+            this.btnPetition.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnPetition.ForeColor = System.Drawing.Color.Red;
+            this.btnPetition.Location = new System.Drawing.Point(3, 3);
+            this.btnPetition.Name = "btnPetition";
+            this.btnPetition.Size = new System.Drawing.Size(100, 24);
+            this.btnPetition.TabIndex = 12;
+            this.btnPetition.Text = "æœªç”³è«‹";
+            this.btnPetition.UseVisualStyleBackColor = false;
+            this.btnPetition.Click += new System.EventHandler(this.btnPetition_Click);
+            // 
+            // btnApproval
+            // 
+            this.btnApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnApproval.BackColor = System.Drawing.Color.White;
+            this.btnApproval.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnApproval.ForeColor = System.Drawing.Color.Red;
+            this.btnApproval.Location = new System.Drawing.Point(104, 3);
+            this.btnApproval.Name = "btnApproval";
+            this.btnApproval.Size = new System.Drawing.Size(100, 24);
+            this.btnApproval.TabIndex = 12;
+            this.btnApproval.Text = "æœªæ‰¿èª�";
+            this.btnApproval.UseVisualStyleBackColor = false;
+            this.btnApproval.Click += new System.EventHandler(this.btnApproval_Click);
+            // 
+            // pnlApprovalButton
+            // 
+            this.pnlApprovalButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.pnlApprovalButton.AutoSize = true;
+            this.pnlApprovalButton.BackColor = System.Drawing.Color.White;
+            this.pnlApprovalButton.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            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(500, 0);
+            this.pnlApprovalButton.Name = "pnlApprovalButton";
+            this.pnlApprovalButton.Size = new System.Drawing.Size(262, 34);
+            this.pnlApprovalButton.TabIndex = 123;
+            this.pnlApprovalButton.Visible = false;
+            // 
+            // btnOnApproval
+            // 
+            this.btnOnApproval.BackColor = System.Drawing.Color.MediumSpringGreen;
+            this.btnOnApproval.Location = new System.Drawing.Point(5, 3);
+            this.btnOnApproval.Name = "btnOnApproval";
+            this.btnOnApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnOnApproval.TabIndex = 34;
+            this.btnOnApproval.TabStop = false;
+            this.btnOnApproval.Text = "æ‰¿èª�";
+            this.btnOnApproval.UseVisualStyleBackColor = false;
+            this.btnOnApproval.Click += new System.EventHandler(this.btnOnApproval_Click);
+            // 
+            // btnNotApproval
+            // 
+            this.btnNotApproval.BackColor = System.Drawing.Color.Red;
+            this.btnNotApproval.Location = new System.Drawing.Point(171, 3);
+            this.btnNotApproval.Name = "btnNotApproval";
+            this.btnNotApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnNotApproval.TabIndex = 35;
+            this.btnNotApproval.TabStop = false;
+            this.btnNotApproval.Text = "ä¸�æ‰¿èª�";
+            this.btnNotApproval.UseVisualStyleBackColor = false;
+            this.btnNotApproval.Click += new System.EventHandler(this.btnNotApproval_Click);
+            // 
+            // btnOnHold
+            // 
+            this.btnOnHold.BackColor = System.Drawing.Color.Yellow;
+            this.btnOnHold.Location = new System.Drawing.Point(88, 3);
+            this.btnOnHold.Name = "btnOnHold";
+            this.btnOnHold.Size = new System.Drawing.Size(83, 24);
+            this.btnOnHold.TabIndex = 36;
+            this.btnOnHold.TabStop = false;
+            this.btnOnHold.Text = "ä¿�ç•™";
+            this.btnOnHold.UseVisualStyleBackColor = false;
+            this.btnOnHold.Click += new System.EventHandler(this.btnOnHold_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.DarkGreen;
+            this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel1.Controls.Add(this.lblConstructionCodelabel);
+            this.panel1.Controls.Add(this.lblLabel01);
+            this.panel1.Controls.Add(this.label5);
+            this.panel1.Controls.Add(this.lblLabel02);
+            this.panel1.Location = new System.Drawing.Point(5, 40);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(770, 66);
+            this.panel1.TabIndex = 17;
+            // 
+            // textBox1
+            // 
+            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.textBox1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox1.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.textBox1.Location = new System.Drawing.Point(127, 36);
+            this.textBox1.MaxLength = 300;
+            this.textBox1.Multiline = true;
+            this.textBox1.Name = "textBox1";
+            this.textBox1.Size = new System.Drawing.Size(635, 64);
+            this.textBox1.TabIndex = 3;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.LightSkyBlue;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.label2.Location = new System.Drawing.Point(5, 36);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(114, 25);
+            this.label2.TabIndex = 122;
+            this.label2.Text = "ã‚³ãƒ¡ãƒ³ãƒˆ";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // panel2
+            // 
+            this.panel2.BackColor = System.Drawing.Color.DarkGreen;
+            this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel2.Controls.Add(this.textBox1);
+            this.panel2.Controls.Add(this.label2);
+            this.panel2.Controls.Add(this.cmbTime);
+            this.panel2.Controls.Add(this.pnlApproval);
+            this.panel2.Controls.Add(this.label4);
+            this.panel2.Controls.Add(this.pnlApprovalButton);
+            this.panel2.Controls.Add(this.dtPatrolDate);
+            this.panel2.Location = new System.Drawing.Point(5, 110);
+            this.panel2.Name = "panel2";
+            this.panel2.Size = new System.Drawing.Size(770, 110);
+            this.panel2.TabIndex = 18;
+            // 
+            // cmbTime
+            // 
+            this.cmbTime.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbTime.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbTime.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.cmbTime.FormattingEnabled = true;
+            this.cmbTime.Location = new System.Drawing.Point(315, 3);
+            this.cmbTime.Name = "cmbTime";
+            this.cmbTime.Size = new System.Drawing.Size(120, 28);
+            this.cmbTime.TabIndex = 2;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMaster.ColumnHeadersHeight = 24;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column3,
+            this.Column4,
+            this.Column2});
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle5.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle5;
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.Location = new System.Drawing.Point(5, 224);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 20;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(770, 326);
+            this.dgvMaster.TabIndex = 4;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column1.Frozen = true;
+            this.Column1.HeaderText = "â„–";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 60;
+            // 
+            // Column3
+            // 
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "å�”åŠ›æ¥­è€…ã‚³ãƒ¼ãƒ‰";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Visible = false;
+            this.Column3.Width = 5;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "å�”åŠ›æ¥­è€…å��";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 630;
+            // 
+            // Column2
+            // 
+            this.Column2.HeaderText = "å�‚åŠ ";
+            this.Column2.Name = "Column2";
+            this.Column2.Width = 60;
+            // 
+            // FrmSafetyPatrol
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.BackColor = System.Drawing.Color.SeaGreen;
+            this.ClientSize = new System.Drawing.Size(780, 587);
+            this.Controls.Add(this.panel2);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.lblConstrCode);
+            this.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSafetyPatrol";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmSafetyPatrol_FormClosing);
+            this.Load += new System.EventHandler(this.FrmSafetyPatrolList_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmSafetyPatrolList_KeyDown);
+            this.pnlApproval.ResumeLayout(false);
+            this.pnlApprovalButton.ResumeLayout(false);
+            this.panel1.ResumeLayout(false);
+            this.panel2.ResumeLayout(false);
+            this.panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label lblLabel01;
+        private System.Windows.Forms.Label lblConstrCode;
+        private System.Windows.Forms.Label lblConstructionCodelabel;
+        private CustomControls.DataGridViewEX dgvMaster;
+        private System.Windows.Forms.DateTimePicker dtPatrolDate;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblLabel02;
+        private System.Windows.Forms.Panel pnlApproval;
+        private System.Windows.Forms.Label lblApprovalCount;
+        private System.Windows.Forms.Button btnPetition;
+        private System.Windows.Forms.Button btnApproval;
+        private System.Windows.Forms.Panel pnlApprovalButton;
+        private System.Windows.Forms.Button btnOnApproval;
+        private System.Windows.Forms.Button btnNotApproval;
+        private System.Windows.Forms.Button btnOnHold;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Panel panel2;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.TextBox textBox1;
+        private System.Windows.Forms.ComboBox cmbTime;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column2;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/FrmSafetyPatrol.resx	(revision 237)
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.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/SafetyPatrol/SafetyPatrolAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/SafetyPatrolAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SafetyPatrol/SafetyPatrolAuxiliary.cs	(revision 237)
@@ -0,0 +1,355 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSafetyPatrol
+    {
+        #region �HŽ–�î•ñŽæ“¾�ˆ—�
+        /// <summary>
+        /// �HŽ–�î•ñŽæ“¾
+        /// </summary>
+        /// <returns></returns>
+        private bool GetBaseInfoData()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                if (!cbDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+        }
+        #endregion
+
+        #region ƒf�[ƒ^•\Ž¦�ˆ—�
+        /// <summary>
+        /// �‰ŠúŽžƒf�[ƒ^Žæ“¾
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // ƒwƒbƒ_�[ƒZƒbƒg
+                SetHeaderData();
+                // ƒOƒŠƒbƒh•\Ž¦
+                SetGridData();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ƒOƒŠƒbƒhƒf�[ƒ^•\Ž¦
+        /// <summary>
+        /// ƒOƒŠƒbƒhƒf�[ƒ^•\Ž¦
+        /// </summary>
+        private void SetGridData()
+        {
+            IOSFPData sfpDB = new IOSFPData();
+            DataGridView dgv = dgvMaster;
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+
+                strSQL.Append("select");
+                strSQL.Append(" A.ConstructionCode");
+                strSQL.Append(", A.CompanyCode");
+                strSQL.Append(", SubCon.CompanyName");
+                strSQL.Append(", B.PettionDate");
+                strSQL.Append(", B.PersonCode");
+                strSQL.Append(", C.CompanyCode");
+                strSQL.Append(", App.ApprovalStatus");
+                strSQL.Append(", App.PersonCode");
+                strSQL.Append(" from");
+                strSQL.Append(" constructionledgerdetail as A");
+                strSQL.Append(" LEFT JOIN subcontractormaster as SubCon");
+                strSQL.Append(" ON SubCon.CompanyCode = A.CompanyCode");
+                strSQL.Append(" LEFT JOIN sfpdata as B");
+                strSQL.Append(" ON B.ConstructionCode = A.ConstructionCode");
+                strSQL.Append(" LEFT JOIN sfpdatadetail as C");
+                strSQL.Append(" ON C.ConstructionCode = B.ConstructionCode");
+                strSQL.Append(" AND C.PettionDate = B.PettionDate");
+                strSQL.Append(" AND C.PersonCode = C.PersonCode");
+                strSQL.Append(" AND C.CompanyCode = A.CompanyCode");
+                strSQL.Append(" LEFT JOIN processapproval as App");
+                strSQL.Append(" ON App.ConstructionCode = A.ConstructionCode");
+                strSQL.AppendFormat(" AND App.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.SafetyPatrol);
+                strSQL.Append(" AND App.OrderNo = B.OrderNo");
+                strSQL.Append(" AND App.SeqNo = 1");
+                strSQL.Append(" where");
+                strSQL.AppendFormat(" A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL.AppendFormat(" AND A.CompanyType = {0}", (int)CommonDefine.CodeDataType.Subconstractor);
+                strSQL.Append(" ORDER BY A.LineCount");
+
+                ArrayList arList = new ArrayList();
+                sfpDB.ExecuteReader(strSQL.ToString(), ref arList);
+
+                int ino = 1;
+                bool bChk = false;
+                foreach (object[] objRec in arList)
+                {
+                    bChk = false;
+                    if (CommonMotions.cnvInt(objRec[1]) == CommonMotions.cnvInt(objRec[5])) bChk = true;
+                    dgv.Rows.Add(ino++,
+                                CommonMotions.cnvInt(objRec[1]),
+                                CommonMotions.cnvString(objRec[2]),
+                                bChk);
+                }
+                if (dgv.RowCount <= 15)
+                {
+                    DataGridViewColumn CurCol = dgv.Columns[2];
+                    CurCol.Width = 646;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                sfpDB.close(); sfpDB = null;
+                if (dgv.RowCount < 15)
+                {
+                    for (int i = 15 - dgv.RowCount; i > 0; i--)
+                    {
+                        dgv.Rows.Add(string.Empty, string.Empty, string.Empty, false);
+                    }
+                }
+            }
+        }
+        #endregion
+
+        #region ƒwƒbƒ_�[ƒZƒbƒg
+        /// <summary>
+        /// ƒwƒbƒ_�[ƒZƒbƒg
+        /// </summary>
+        /// <param name="objRec"></param>
+        private void SetHeaderData()
+        {
+            IOConstructionBaseInfoDetail DetailDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(DetailDB.CreatePrimarykeyString(m_ConstructionCode,
+                                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName));
+                ConstructionBaseInfoDetail DetailRec = new ConstructionBaseInfoDetail();
+                DetailDB.SelectAction(strSQL.ToString(), ref DetailRec);
+
+                ToolTip HeaderToolTip = new ToolTip();
+
+                lblLabel01.Text = DetailRec.DetailString;
+                HeaderToolTip.SetToolTip(lblLabel01, lblLabel01.Text);
+                lblLabel02.Text = CommonMotions.LoginUserData.PersonName;
+                HeaderToolTip.SetToolTip(lblLabel02, lblLabel02.Text);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                DetailDB.close(); DetailDB = null;
+            }
+        }
+        #endregion
+
+        #region ŽžŠÔƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
+        /// <summary>
+        /// ŽžŠÔƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
+        /// </summary>
+        private void SetTimeComboBox()
+        {
+            try
+            {
+                cmbTime.DataSource = null;
+                cmbTime.Items.Clear();
+                cmbTime.Text = "";
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                for (int i = 0; i < 25; i += 2)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(i * 100, string.Format("    {0}:00  �`", i));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
+                ComboBoxAction.InitDataSetCombBox(cmbTime, ConstructionDataList);
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region “o˜^ƒ{ƒ^ƒ“‰Ÿ‰ºŒã‚Ì“o˜^�ˆ—�
+        /// <summary>
+        /// “o˜^ƒ{ƒ^ƒ“‰Ÿ‰ºŒã‚Ì“o˜^�ˆ—�
+        /// </summary>
+        /// <returns></returns>
+        private bool DataEntryProcess()
+        {
+            try
+            {
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region �‰ŠúŽž�\�¿�E�³”F•\Ž¦�ˆ—�
+        /// <summary>
+        /// �‰ŠúŽž�\�¿�E�³”F•\Ž¦�ˆ—�
+        /// </summary>
+        private void InitApprovalDisplay()
+        {
+            try
+            {
+                // �³”FƒR�[ƒhŽæ“¾
+                int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+
+                // ‹N“®Œ³‚ÌƒŠƒXƒg‚É�³”F‰æ–Ê‚ª‚ ‚ê‚Î•\Ž¦‚µ‚È‚¢
+                if (ClsApprovalPermission.ExceApprovalScreen())
+                {
+                    pnlApproval.Visible = false;
+                }
+
+                // �³”Fƒ{ƒ^ƒ“�EŒ��”‚Ì”ñ•\Ž¦
+                btnApproval.Visible = false;
+                lblApprovalCount.Visible = false;
+
+                // ----- �‰ŠúŽž‚Í�\�¿ƒ{ƒ^ƒ“‚ÌƒTƒCƒY‚ð�Å‘å‚É‚·‚é
+                btnPetition.Size = new Size(250, btnPetition.Size.Height);
+
+                // ----- �HŽ–ƒR�[ƒh�E�³”F‹@”\”Ô�†Žæ“¾�i�\�¿ƒŒƒR�[ƒh‚ª‚È‚¨�ê�‡‚Í–¢�\�¿�j
+                if (!ClsApprovalPermission.CheckProcessPetition(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo)) return;
+
+                // ----- �\�¿�Ï‚Ì�ê�‡
+                // �\�¿ƒ{ƒ^ƒ“‚Ì•\Ž¦
+                btnPetition.Text = CommonDefine.PetitionButtonString[1];
+                btnPetition.ForeColor = Color.Black;
+                btnPetition.Size = btnApproval.Size;
+                btnPetition.Enabled = false;
+
+                // �³”Fƒ{ƒ^ƒ“‚Ì•\Ž¦
+                btnApproval.Visible = true;
+
+                // ----- �³”F�Ï‚Ì�ê�‡
+                if (ClsApprovalPermission.CheckProcessApproval(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo))
+                {
+                    btnApproval.Text = CommonDefine.ApprovalButtonString[1];
+                    btnApproval.ForeColor = Color.Black;
+                    // �³”F�Ï‚Ý‚Ì�ê�‡‚Í“ü—Í‚Å‚«‚È‚¢
+                    SeeModeLock();
+                }
+
+                // �³”FŒ��”‚Ì•\Ž¦
+                lblApprovalCount.Visible = true;
+                SetApprovalCount();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �³”F�”•\Ž¦
+        /// <summary>
+        /// �³”FŒ��”‚ÌƒZƒbƒg
+        /// </summary>
+        private void SetApprovalCount()
+        {
+            try
+            {
+                // �‰Šú’lƒZƒbƒg
+                lblApprovalCount.Text = "";
+
+                // �HŽ–ƒR�[ƒh�E�³”F‹@”\”Ô�†Žæ“¾
+                int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
+                int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("ˆÀ‘Sƒpƒgƒ��[ƒ‹�³”F")).Key;
+                // ’S“–•”��Žæ“¾
+                int DepartmentCode = ClsApprovalPermission.GetFromConstrAndAppTheDep(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
+
+                // �³”Fƒf�[ƒ^Žæ“¾
+                int ApprovalCount = ClsApprovalPermission.GetProcessApprovalDataCount(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
+
+                // �³”FŒo˜Hƒ}ƒXƒ^Žæ“¾
+                int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
+
+                // �‰Šú’lƒZƒbƒg
+                lblApprovalCount.Text = string.Format("{0}/{1}", ApprovalCount, MasterCount);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ŽQ�Æƒ‚�[ƒh
+        /// <summary>
+        /// ŽQ�Æƒ‚�[ƒh‚É‚µ‚ÄŠeƒRƒ“ƒgƒ��[ƒ‹‚Öƒ�ƒbƒN‚ð‚©‚¯‚é
+        /// </summary>
+        private void SeeModeLock()
+        {
+            try
+            {
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(revision 237)
@@ -91,9 +91,6 @@
         /// ãƒ‡ãƒ¼ã‚¿è¡¨ç¤ºå®šç¾©
         /// </summary>
         private KeyValuePair<int, string>[] s_ConfigurationArray = {
-                                                    //new KeyValuePair<int, string>(-1, "åŸºã€€æœ¬ã€€å‡¦ã€€ç�†"),                                                   // ----- ã‚¿ã‚¤ãƒˆãƒ«
-                                                    //new KeyValuePair<int, string>((int)ClsExcute.SubFormExecuteNo.ActionSchdule, string.Empty),             // 203:è¡Œå‹•äºˆå®šå…¥åŠ›
-                                                    //new KeyValuePair<int, string>((int)ClsExcute.SubFormExecuteNo.VehicleSchdule, string.Empty),            // 204:è»Šä¸¡äºˆç´„å…¥åŠ›
                                                     new KeyValuePair<int, string>(-1, "å…±ã€€é€šã€€å‡¦ã€€ç�†"),                                                    // ----- ã‚¿ã‚¤ãƒˆãƒ«
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.ConstructionList, string.Empty),          //  1:å·¥äº‹æƒ…å ±ä¸€è¦§
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList, string.Empty),      //  7:æ‰¿èª�ç”³è«‹ä¸€è¦§
@@ -124,6 +121,7 @@
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.MaterialReserveEntry, string.Empty),      // 26:è³‡æ��è²¸å‡º
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.MaterialReturnEntry, string.Empty),       // 27:è³‡æ��è¿”å�´
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.MaterialSelect, string.Empty),            // 28;è³‡æ��é�¸æŠž
+                                                    new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.SafetyPatrol, string.Empty),              // 43:å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
 
                                                     new KeyValuePair<int, string>(-1, "æœˆæ¬¡ï¼ˆæ–½å·¥ï¼‰ç®¡ç�†"),                                                  // ----- ã‚¿ã‚¤ãƒˆãƒ«
                                                     new KeyValuePair<int, string>((int)ClsExcute.ProcessExecuteNo.RequestSummaryList, string.Empty),        // 29:è«‹æ±‚ã�¾ã�¨ã‚�
@@ -157,8 +155,8 @@
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ConstructionType, string.Empty),      // å·¥äº‹ç¨®åˆ¥ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.Suppliers, string.Empty),             // ä»•å…¥å…ˆç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SubContractor, string.Empty),         // å�”åŠ›ä¼šç¤¾ç™»éŒ²
-                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SubContractorItem, string.Empty),     // å�”åŠ›ä¼šç¤¾å·¥ç¨®ç™»éŒ²
-                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory, string.Empty),  // å�”åŠ›ä¼šç¤¾è�·ç¨®ç™»éŒ²
+                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SubContrItem, string.Empty),          // å�”åŠ›ä¼šç¤¾å·¥ç¨®ç™»éŒ²
+                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SubContrJobCat, string.Empty),        // å�”åŠ›ä¼šç¤¾è�·ç¨®ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.Component, string.Empty),             // å¤§é …ç›®ç™»éŒ²ï¼ˆæ§‹æˆ�ç™»éŒ²ï¼‰
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ConstructionItem, string.Empty),      // ä¸­é …ç›®ç™»éŒ²ï¼ˆå·¥ç¨®ç™»éŒ²ï¼‰
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ConstructionWork, string.Empty),      // å°�é …ç›®ç™»éŒ²ï¼ˆä½œæ¥­ç™»éŒ²ï¼‰
@@ -165,7 +163,7 @@
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ComponentLink, string.Empty),         // å¤§ãƒ»ä¸­é …ç›®é–¢é€£ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.BusinessType, string.Empty),          // æ³•äººæ ¼ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.OrderDivision, string.Empty),         // ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
-                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ConstructionExpenses, string.Empty),  // æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
+                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.ConstrExpenses, string.Empty),        // æ–½å·¥çµŒè²»åŒºåˆ†ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.Unit, string.Empty),                  // å�˜ä½�ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.Calender, string.Empty),              // ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ç™»éŒ²
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.VehicleMaster, string.Empty),         // è»Šä¸¡ç™»éŒ²
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs	(revision 237)
@@ -228,7 +228,7 @@
                             case (int)ClsExcute.ProcessExecuteNo.MaterialReturnEntry:       // 27:è³‡æ��è¿”å�´
                                 bool CodeExists = false;
                                 foreach (int ExecCode in AddList)
-                                {
+                                {   // æ—¢ã�«ç™»éŒ²å¯¾è±¡ã�«ã�ªã�£ã�¦ã�„ã�ªã�„ã�‹ã‚’ãƒ�ã‚§ãƒƒã‚¯ã�™ã‚‹
                                     if (ExecCode == (int)ClsExcute.ProcessExecuteNo.MaterialEntrylList)
                                     {
                                         CodeExists = true;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs	(revision 237)
@@ -984,7 +984,7 @@
                 string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
                 if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
 
-                strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+                strSQL += string.Format("{0} DeleteFlg = 0 Order By labourKind DESC, DisplayOrder ASC", s_SQLAND);
 
                 // æ–‡å­—åˆ—ã�«Whereã�Œç„¡ã�„å ´å�ˆã�¯å…ˆé ­ã‚’Whereã�«å¤‰æ›´ã�™ã‚‹
                 if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubconstractorDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubconstractorDiag.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubconstractorDiag.cs	(revision 237)
@@ -1277,7 +1277,7 @@
             string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
             if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
 
-            strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+            strSQL += string.Format("{0} DeleteFlg = 0 Order By labourKind DESC, DisplayOrder ASC", s_SQLAND);
 
             // æ–‡å­—åˆ—ã�«Whereã�Œç„¡ã�„å ´å�ˆã�¯å…ˆé ­ã‚’Whereã�«å¤‰æ›´ã�™ã‚‹
             if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 237)
@@ -513,8 +513,8 @@
                                                                     },
                                                                     {0,
                                                                         0,
+                                                                        (int)ClsExcute.ProcessExecuteNo.SafetyPatrol,
                                                                         0,
-                                                                        0,
                                                                         0
                                                                     },
                                                                     {0,
@@ -699,8 +699,8 @@
                                                                     0
                                                                 },
                                                                 { (int)ClsExcute.MaintenanceExecuteNo.SubContractor,
-                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContractorItem,
-                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContrItem,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContrJobCat,
                                                                     0
                                                                 },
                                                                 { (int)ClsExcute.MaintenanceExecuteNo.Component,
@@ -710,7 +710,7 @@
                                                                 },
                                                                 { (int)ClsExcute.MaintenanceExecuteNo.BusinessType,
                                                                     (int)ClsExcute.MaintenanceExecuteNo.OrderDivision,
-                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstructionExpenses,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstrExpenses,
                                                                     (int)ClsExcute.MaintenanceExecuteNo.Unit
                                                                 },
                                                                 { (int)ClsExcute.MaintenanceExecuteNo.Calender,
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuEvent.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuEvent.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuEvent.cs	(revision 237)
@@ -384,7 +384,15 @@
                             case 3:
                                 break;
                             case 5:
+                                #region å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+                                // å·¥äº‹ä¸€è¦§ã�‹ã‚‰è¡¨ç¤ºã‚’è¡Œã�†ã�Ÿã‚�èµ·å‹•ãƒ—ãƒ­ã‚»ã‚¹ã�¯ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã�®1ã�¤ç›®ã�«ã‚»ãƒƒãƒˆã�™ã‚‹ã€‚
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+
+                                //ã€€å®‰å…¨ãƒ‘ãƒˆãƒ­ãƒ¼ãƒ«ç”³è«‹
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.SafetyPatrol);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
                                 break;
+                                #endregion
                             case 7:
                                 break;
                             case 9:
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 237)
@@ -144,6 +144,8 @@
     <Compile Include="Common\Process\ClsExcute.cs" />
     <Compile Include="Common\CommonDefine.cs" />
     <Compile Include="Common\Office\UsedWord.cs" />
+    <Compile Include="DataModel\SFPDataDetail.cs" />
+    <Compile Include="DataModel\SFPData.cs" />
     <Compile Include="DataModel\AttendanceDailyData.cs" />
     <Compile Include="DataModel\AttendanceData.cs" />
     <Compile Include="DataModel\BankBusinessDayMaster.cs" />
@@ -229,6 +231,8 @@
     <Compile Include="DB\IOAccess\IOMaterialRecordInfo.cs" />
     <Compile Include="DB\IOAccess\IOMaterialTypes.cs" />
     <Compile Include="DB\IOAccess\IOMCategoryName.cs" />
+    <Compile Include="DB\IOAccess\IOSFPDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IOSFPData.cs" />
     <Compile Include="DB\IOAccess\IOMPersonDepartment.cs" />
     <Compile Include="DB\IOAccess\IOMPersonSalary.cs" />
     <Compile Include="DB\IOAccess\IOMSecurity.cs" />
@@ -703,6 +707,15 @@
     <Compile Include="Forms\DataEntry\Request\StatusAndDateReq.Designer.cs">
       <DependentUpon>StatusAndDateReq.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\DataEntry\SafetyPatrol\FrmSafetyPatrol.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\SafetyPatrol\FrmSafetyPatrol.designer.cs">
+      <DependentUpon>FrmSafetyPatrol.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\SafetyPatrol\SafetyPatrolAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\DataEntry\SubConstrRegist\FrmSubConstrRegist.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1458,6 +1471,9 @@
     <EmbeddedResource Include="Forms\DataEntry\Request\StatusAndDateReq.resx">
       <DependentUpon>StatusAndDateReq.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\SafetyPatrol\FrmSafetyPatrol.resx">
+      <DependentUpon>FrmSafetyPatrol.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\SubConstrRegist\FrmSubConstrRegist.resx">
       <DependentUpon>FrmSubConstrRegist.cs</DependentUpon>
     </EmbeddedResource>
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 236)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 237)
@@ -32,7 +32,7 @@
 // ã�™ã�¹ã�¦ã�®å€¤ã‚’æŒ‡å®šã�™ã‚‹ã�‹ã€�ä¸‹ã�®ã‚ˆã�†ã�« '*' ã‚’ä½¿ã�£ã�¦ãƒ“ãƒ«ãƒ‰ã�Šã‚ˆã�³ãƒªãƒ“ã‚¸ãƒ§ãƒ³ç•ªå�·ã‚’ 
 // æ—¢å®šå€¤ã�«ã�™ã‚‹ã�“ã�¨ã�Œã�§ã��ã�¾ã�™:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.56")]
-[assembly: AssemblyFileVersion("1.0.0.56")]
+[assembly: AssemblyVersion("1.0.0.57")]
+[assembly: AssemblyFileVersion("1.0.0.57")]
 // Log4netã‚’ä½¿ç”¨ã�™ã‚‹
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement.v12.suo
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
