Index: trunk/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 20)
@@ -298,9 +298,18 @@
         /// </summary>
         public enum DivisionMasterCodeDefine
         {
-            OrderDivision = 1,          // ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
-            ConstructionClass = 2,      // å·¥äº‹ç¨®åˆ¥ç™»éŒ²
-            ConstructionExpenses = 3,   // å·¥äº‹çµŒè²»å��ç§°ç™»éŒ²
+            /// <summary>
+            /// ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²
+            /// </summary>
+            OrderDivision = 1,
+            /// <summary>
+            /// å·¥äº‹ç¨®åˆ¥ç™»éŒ²
+            /// </summary>
+            ConstructionClass = 2,
+            /// <summary>
+            /// å·¥äº‹çµŒè²»å��ç§°ç™»éŒ²
+            /// </summary>
+            ConstructionExpenses = 3,
         }
         /// <summary>
         /// åŒºåˆ†ãƒžã‚¹ã‚¿åŒºåˆ†ã‚­ãƒ¼
@@ -446,6 +455,7 @@
         #endregion
 
         #region å·¥äº‹åŸºæœ¬æƒ…å ±ï¼šæ–½å·¥æ¡ˆä»¶çŠ¶æ…‹å®šç¾©
+        #region æ–½å·¥æ¡ˆä»¶çŠ¶æ…‹ã‚­ãƒ¼å®šç¾©é…�åˆ—
         /// <summary>
         /// æ–½å·¥æ¡ˆä»¶çŠ¶æ…‹ã‚­ãƒ¼å®šç¾©é…�åˆ—
         /// </summary>
@@ -524,6 +534,9 @@
             /// </summary>
             Status17,
         };
+        #endregion
+
+        #region æ–½å·¥æ¡ˆä»¶çŠ¶æ…‹Dictionary
         /// <summary>
         /// æ–½å·¥æ¡ˆä»¶çŠ¶æ…‹Dictionary
         /// </summary>
@@ -625,6 +638,7 @@
                                                                                 {17, "Hit'sVå·¥äº‹"},         // å·¥äº‹åŸºæœ¬æƒ…å ±ãƒ©ã‚¸ã‚ªãƒœã‚¿ãƒ³ï¼š17
                                                                                 };
         #endregion
+        #endregion
 
         #region å·¥äº‹åŸºæœ¬æƒ…å ±ï¼šæ—¥ä»˜é …ç›®ãƒ†ãƒ¼ãƒ–ãƒ«
         #region æ—§ãƒ‡ãƒ¼ã‚¿
@@ -1026,9 +1040,9 @@
         public static readonly string[] CostDataNoString = new string[] { "", "äº¤ã€€é€šã€€è²»", "è³¼å…¥å“�è²»", "è»Šä¸¡ãƒªãƒ¼ã‚¹ä»£", "é§�è»Šå ´ãƒ»è³‡æ��ç½®ã��å ´ä»£", "å®¿æ³Šè²»" };
         #endregion
 
-        #region å…¥åŠ›å±¥æ­´ï¼šãƒ‡ãƒ¼ã‚¿ç¨®åˆ¥
+        #region å…¥åŠ›å±¥æ­´ç­‰ï¼šãƒ‡ãƒ¼ã‚¿ç¨®åˆ¥
         /// <summary>
-        /// å…¥åŠ›å±¥æ­´ï¼šãƒ‡ãƒ¼ã‚¿ç¨®åˆ¥
+        /// å…¥åŠ›å±¥æ­´ç­‰ï¼šãƒ‡ãƒ¼ã‚¿ç¨®åˆ¥
         /// </summary>
         public enum SearchLogDataType
         {
Index: trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 20)
@@ -515,38 +515,42 @@
                     if (CurRec.CompanyCode == 0) continue;
                     // æ–½å·¥ç®¡ç�†ä¸­æ‹…å½“è€…ã�§ã�¯ã�ªã�„å ´å�ˆã�¯å‡¦ç�†ã�—ã�ªã�„
                     if (CurRec.OperatingFlg == (int)CommonDefine.SalaryOperateKind.Complate) continue;
+                    // å®Ÿè¡Œé‡‘é¡�ã�Œç„¡ã�„å ´å�ˆã�¯å‡¦ç�†ã�—ã�ªã�„
+                    if (CurRec.ExecutionAmount == 0) continue;
 
                     // 1æ—¥åˆ†ã�®çµ¦ä¸Žã‚’å�–å¾—ã�™ã‚‹
                     //double dSaraly = Get1DaysSalaryForOperating(PersonDB, CurRec.CompanyCode);
                     double dSaraly = Get1DaysSalaryForFixed(PersonDB, CurRec.CompanyCode, CurRec.GroupCount);
 
-                        switch (CurRec.SalaryFlg)
-                        {
-                            case (int)CommonDefine.SalaryDevision.All:          // å…¨æ—¥æŒ¯åˆ†
-                                // æŒ‡å®šæ—¥ã�¾ã�§ã�®ç¨¼åƒ�æ—¥æ•°ã‚’æŽ›ã�‘ã�Ÿå€¤ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                                dSaraly *= WorkingDay;
-                                break;
-                            case (int)CommonDefine.SalaryDevision.Noting:       // æŒ¯åˆ†ç„¡
-                                // çµ¦ä¸ŽæŒ¯åˆ†ç„¡
+                    switch (CurRec.SalaryFlg)
+                    {
+                        case (int)CommonDefine.SalaryDevision.All:          // å…¨æ—¥æŒ¯åˆ†
+                            // æŒ‡å®šæ—¥ã�¾ã�§ã�®ç¨¼åƒ�æ—¥æ•°ã‚’æŽ›ã�‘ã�Ÿå€¤ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+                            dSaraly *= WorkingDay;
+                            break;
+                        case (int)CommonDefine.SalaryDevision.Noting:       // æŒ¯åˆ†ç„¡
+                            // çµ¦ä¸ŽæŒ¯åˆ†ç„¡
+                            dSaraly = 0;
+                            LoopBreak = true;
+                            break;
+                        case (int)CommonDefine.SalaryDevision.DaysInput:    // æ—¥æ•°å…¥åŠ›
+                            // æ—¥å½“åŠ ç®—åˆ¤å®šã‚’è¡Œã�†
+                            if (CheckPaymentValue(CurRec))
+                            {
+                                // æ—¥æ•°åˆ†æŽ›ã�‘ã‚‹
+                                dSaraly *= CurRec.SalaryDays;
+                            }
+                            else
+                            {
                                 dSaraly = 0;
-                                LoopBreak = true;
-                                break;
-                            case (int)CommonDefine.SalaryDevision.DaysInput:    // æ—¥æ•°å…¥åŠ›
-                                // æ—¥å½“åŠ ç®—åˆ¤å®šã‚’è¡Œã�†
-                                if (CheckPaymentValue(CurRec))
-                                {
-                                    // æ—¥æ•°åˆ†æŽ›ã�‘ã‚‹
-                                    dSaraly *= CurRec.SalaryDays;
-                                }
-                                else
-                                {
-                                    dSaraly = 0;
-                                }
-                                LoopBreak = true;
-                                break;
-                            default:
-                                break;
-                        }
+                            }
+                            LoopBreak = true;
+                            break;
+                        default:
+                            break;
+                    }
+                    // è¨ˆç®—å€¤ã�Œå®Ÿè¡Œé‡‘é¡�ã‚ˆã‚Šå¤§ã��ã�„å ´å�ˆã�¯å‡¦ç�†ã�—ã�ªã�„
+                    if (CurRec.ExecutionAmount < dSaraly) continue;
 
                     DateTime ParaDate = new DateTime(TargetDate.Year, TargetDate.Month, 1);
                     // æ”¯æ‰•ã�„ãƒ‡ãƒ¼ã‚¿æ›¸è¾¼ã�¿
Index: trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 20)
@@ -534,6 +534,7 @@
         {
             try
             {
+                if (m_ProcControlPara.Count <= cnt) return;
                 // æ•°å€¤ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿
                 m_ProcControlPara[cnt].IntExecParameter.Clear();
                 // æ–‡å­—åˆ—ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿
@@ -556,6 +557,7 @@
         {
             try
             {
+                if (m_ProcControlPara.Count <= cnt) return;
                 // æ•°å€¤ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿
                 m_ProcControlPara[cnt].IntSaveParameter.Clear();
                 // æ–‡å­—åˆ—ãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿
Index: trunk/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs	(revision 20)
@@ -31,7 +31,7 @@
         /// <summary>
         /// å·¥äº‹è©³ç´°å�°å¸³ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ä¸¦ã�³
         /// </summary>
-        public enum ConstructionLedgerColumn
+        public enum DataColumn
         {
             ConstructionCode = 0,	    // å·¥äº‹ç•ªå�·
 
@@ -373,6 +373,100 @@
         }
         #endregion
 
+        #region 1é …ç›®ã�®æ›´æ–°ã‚’è¡Œã�†
+        /// <summary>
+        /// 1é …ç›®ã�®æ›´æ–°ã‚’è¡Œã�†
+        /// </summary>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="GroupCount"></param>
+        /// <param name="LineCount"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionLedger";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)DataColumn.ConstructionCode:          // å·¥äº‹ç•ªå�·
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.ConstructionPeriod:        // äº‹æ¥­æœŸ
+                        strcmd += string.Format(" ConstructionPeriod = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.CreatorCode:               // ä½œæˆ�è€…ã‚³ãƒ¼ãƒ‰
+                        strcmd += string.Format(" CreatorCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.CreatorName:    	        // ä½œæˆ�è€…å��
+                        strcmd += string.Format(" CreatorName = '{0}'", value.ToString());
+                        break;
+                    case (int)DataColumn.CreateDate:	            // ä½œæˆ�æ—¥
+                        strcmd += string.Format(" CreateDate = TO_DATE('{0}','YYYY/MM/DD')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.ConstructionTimes:         // å·¥æœŸï¼ˆå�˜ä½�ãƒ»æœˆï¼‰
+                        strcmd += string.Format(" ConstructionTimes = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.ConstructionStart:         // å¥‘ç´„å·¥æœŸé–‹å§‹
+                        strcmd += string.Format(" ConstructionStart = TO_DATE('{0}','YYYY/MM/DD')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.ConstructionEnd:           // å¥‘ç´„å·¥æœŸå®Œäº†
+                        strcmd += string.Format(" ConstructionEnd = TO_DATE('{0}','YYYY/MM/DD')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.OrdersDecisionPrice:       // ç¨ŽæŠœå�—æ³¨æ±ºå®šé‡‘é¡�
+                        strcmd += string.Format(" OrdersDecisionPrice = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.CompanyExpenses:           // ä¼šç¤¾çµŒè²»å�ˆè¨ˆ
+                        strcmd += string.Format(" CompanyExpenses = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.DepartmentExpenses:        // éƒ¨ç½²çµŒè²»å�ˆè¨ˆ
+                        strcmd += string.Format(" DepartmentExpenses = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.SalesExpenses:             // å–¶æ¥­çµŒè²»å�ˆè¨ˆ
+                        strcmd += string.Format(" SalesExpenses = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.TotalPayment:              // ç·�æ”¯æ‰•é¡�
+                        strcmd += string.Format(" TotalPayment = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.GrossProfit:               // ç²—åˆ©
+                        strcmd += string.Format(" GrossProfit = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.Allowance:                 // çµ¦ä¸Ž
+                        strcmd += string.Format(" Allowance = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.NetProfit:                 // ç´”åˆ©ç›Š
+                        strcmd += string.Format(" NetProfit = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.ComplateFlg:               // å…¥åŠ›å®Œäº†ãƒ•ãƒ©ã‚°
+                        strcmd += string.Format(" ComplateFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.IntegrationFlg:            // å�—æ³¨é‡‘é¡�ç©�ç®—ãƒ•ãƒ©ã‚°
+                        strcmd += string.Format(" IntegrationFlg = {0}", ((int)value).ToString());
+                        break;
+                    default:
+                        break;
+                }
+
+                strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (OracleException oraex)
+            {
+                logger.ErrorFormat("ã‚ªãƒ©ã‚¯ãƒ«ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), oraex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
         /// <summary>
         /// OracleDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
@@ -385,29 +479,29 @@
             {
                 // ãƒ‡ãƒ¼ã‚¿å�–å¾—
 
-                wrk.ConstructionCode = int.Parse(objwrk[(int)ConstructionLedgerColumn.ConstructionCode].ToString());	        // å·¥äº‹ç•ªå�·
+                wrk.ConstructionCode = int.Parse(objwrk[(int)DataColumn.ConstructionCode].ToString());	        // å·¥äº‹ç•ªå�·
 
-                wrk.ConstructionPeriod = int.Parse(objwrk[(int)ConstructionLedgerColumn.ConstructionPeriod].ToString());        // äº‹æ¥­æœŸ
-                wrk.CreatorCode = int.Parse(objwrk[(int)ConstructionLedgerColumn.CreatorCode].ToString());                      // ä½œæˆ�è€…ã‚³ãƒ¼ãƒ‰
-                wrk.CreatorName = objwrk[(int)ConstructionLedgerColumn.CreatorName].ToString();                                 // ä½œæˆ�è€…å��
-                wrk.CreateDate = DateTime.Parse(objwrk[(int)ConstructionLedgerColumn.CreateDate].ToString());                   // ä½œæˆ�æ—¥
-                wrk.ConstructionTimes = double.Parse(objwrk[(int)ConstructionLedgerColumn.ConstructionTimes].ToString());       // å·¥æœŸï¼ˆå�˜ä½�ãƒ»æœˆï¼‰
-                wrk.ConstructionStart = DateTime.Parse(objwrk[(int)ConstructionLedgerColumn.ConstructionStart].ToString());     // å¥‘ç´„å·¥æœŸé–‹å§‹
-                wrk.ConstructionEnd = DateTime.Parse(objwrk[(int)ConstructionLedgerColumn.ConstructionEnd].ToString());         // å¥‘ç´„å·¥æœŸå®Œäº†
+                wrk.ConstructionPeriod = int.Parse(objwrk[(int)DataColumn.ConstructionPeriod].ToString());        // äº‹æ¥­æœŸ
+                wrk.CreatorCode = int.Parse(objwrk[(int)DataColumn.CreatorCode].ToString());                      // ä½œæˆ�è€…ã‚³ãƒ¼ãƒ‰
+                wrk.CreatorName = objwrk[(int)DataColumn.CreatorName].ToString();                                 // ä½œæˆ�è€…å��
+                wrk.CreateDate = DateTime.Parse(objwrk[(int)DataColumn.CreateDate].ToString());                   // ä½œæˆ�æ—¥
+                wrk.ConstructionTimes = double.Parse(objwrk[(int)DataColumn.ConstructionTimes].ToString());       // å·¥æœŸï¼ˆå�˜ä½�ãƒ»æœˆï¼‰
+                wrk.ConstructionStart = DateTime.Parse(objwrk[(int)DataColumn.ConstructionStart].ToString());     // å¥‘ç´„å·¥æœŸé–‹å§‹
+                wrk.ConstructionEnd = DateTime.Parse(objwrk[(int)DataColumn.ConstructionEnd].ToString());         // å¥‘ç´„å·¥æœŸå®Œäº†
 
-                wrk.OrdersDecisionPrice = double.Parse(objwrk[(int)ConstructionLedgerColumn.OrdersDecisionPrice].ToString());   // ç¨ŽæŠœå�—æ³¨æ±ºå®šé‡‘é¡�
-                wrk.CompanyExpenses = double.Parse(objwrk[(int)ConstructionLedgerColumn.CompanyExpenses].ToString());           // ä¼šç¤¾çµŒè²»å�ˆè¨ˆ
-                wrk.DepartmentExpenses = double.Parse(objwrk[(int)ConstructionLedgerColumn.DepartmentExpenses].ToString());     // éƒ¨ç½²çµŒè²»å�ˆè¨ˆ
-                wrk.SalesExpenses = double.Parse(objwrk[(int)ConstructionLedgerColumn.SalesExpenses].ToString());               // å–¶æ¥­çµŒè²»å�ˆè¨ˆ
-                wrk.TotalPayment = double.Parse(objwrk[(int)ConstructionLedgerColumn.TotalPayment].ToString());                 // ç·�æ”¯æ‰•é¡�
-                wrk.GrossProfit = double.Parse(objwrk[(int)ConstructionLedgerColumn.GrossProfit].ToString());                   // ç²—åˆ©
-                wrk.Allowance = double.Parse(objwrk[(int)ConstructionLedgerColumn.Allowance].ToString());                       // çµ¦ä¸Ž
-                wrk.NetProfit = double.Parse(objwrk[(int)ConstructionLedgerColumn.NetProfit].ToString());                       // ç´”åˆ©ç›Š
-                wrk.ComplateFlg = double.Parse(objwrk[(int)ConstructionLedgerColumn.ComplateFlg].ToString());                   // å…¥åŠ›å®Œäº†ãƒ•ãƒ©ã‚°
-                wrk.IntegrationFlg = int.Parse(objwrk[(int)ConstructionLedgerColumn.IntegrationFlg].ToString());                // å�—æ³¨é‡‘é¡�ç©�ç®—ãƒ•ãƒ©ã‚°
+                wrk.OrdersDecisionPrice = double.Parse(objwrk[(int)DataColumn.OrdersDecisionPrice].ToString());   // ç¨ŽæŠœå�—æ³¨æ±ºå®šé‡‘é¡�
+                wrk.CompanyExpenses = double.Parse(objwrk[(int)DataColumn.CompanyExpenses].ToString());           // ä¼šç¤¾çµŒè²»å�ˆè¨ˆ
+                wrk.DepartmentExpenses = double.Parse(objwrk[(int)DataColumn.DepartmentExpenses].ToString());     // éƒ¨ç½²çµŒè²»å�ˆè¨ˆ
+                wrk.SalesExpenses = double.Parse(objwrk[(int)DataColumn.SalesExpenses].ToString());               // å–¶æ¥­çµŒè²»å�ˆè¨ˆ
+                wrk.TotalPayment = double.Parse(objwrk[(int)DataColumn.TotalPayment].ToString());                 // ç·�æ”¯æ‰•é¡�
+                wrk.GrossProfit = double.Parse(objwrk[(int)DataColumn.GrossProfit].ToString());                   // ç²—åˆ©
+                wrk.Allowance = double.Parse(objwrk[(int)DataColumn.Allowance].ToString());                       // çµ¦ä¸Ž
+                wrk.NetProfit = double.Parse(objwrk[(int)DataColumn.NetProfit].ToString());                       // ç´”åˆ©ç›Š
+                wrk.ComplateFlg = double.Parse(objwrk[(int)DataColumn.ComplateFlg].ToString());                   // å…¥åŠ›å®Œäº†ãƒ•ãƒ©ã‚°
+                wrk.IntegrationFlg = int.Parse(objwrk[(int)DataColumn.IntegrationFlg].ToString());                // å�—æ³¨é‡‘é¡�ç©�ç®—ãƒ•ãƒ©ã‚°
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)ConstructionLedgerColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ConstructionLedgerColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
             }
             catch (OracleException oraex)
             {
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 20)
@@ -124,9 +124,10 @@
                 ClsExcute.ProcControlPara[NowPoint].StringSaveParameter.Add(numUDConstPro.Value.ToString());
                 // ’S“–ŽÒ‘I‘ð‹æ•ª‘Þ”ð
                 if (radioButton2.Checked) ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Add(true);
+                // ŒŸ�õ•”��
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbDepartment.SelectedValue));
                 // ŒŸ�õ’S“–ŽÒ
-                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(cmbDepartment.SelectedIndex);
-                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(cmbConstructionPerson.SelectedIndex);
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue));
 
                 // •\Ž¦�æ“ª�s
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.FirstDisplayedScrollingRowIndex);
@@ -881,11 +882,12 @@
                 if (ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Count > 0)
                     if (ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter[0]) radioButton2.Checked = true;
 
-                // ’S“–ŽÒ
+                // •”���E’S“–ŽÒ
                 if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 0)
                 {
-                    cmbDepartment.SelectedIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
-                    cmbConstructionPerson.SelectedIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
+                    cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
+                    SetcmbPersons();
+                    cmbConstructionPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
                 }
 
                 // �ˆ—�–¼�Ì•\Ž¦
@@ -898,11 +900,13 @@
                 DataDisplay();
 
                 // •\Ž¦�æ“ª�s
-                dgv.FirstDisplayedScrollingRowIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 3)
+                {
+                    dgv.FirstDisplayedScrollingRowIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
 
-                // Œ»�Ý“ª�s
-                dgv.Rows[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[3]].Selected = true;
-
+                    // Œ»�Ý“ª�s
+                    dgv.Rows[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[3]].Selected = true;
+                }
                 // ƒ\�[ƒg�ó‘Ô
                 if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 4)
                 {
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs	(revision 20)
@@ -462,6 +462,121 @@
         }
         #endregion
 
+        #region �eƒf�[ƒ^Žæ“¾�‡
+        /// <summary>
+        /// �eƒf�[ƒ^Žæ“¾�‡
+        /// </summary>
+        private enum ReadParentOrder
+        {
+            ConstructionCode = 0,
+            StartDate,
+            CompDate,
+            ConstrPersonCode,
+            ConstrPersonName,
+            ConstrPersonSalary,
+            AssistPersonCode,
+            AssistPersonName,
+            AssistPersonSalary,
+            InstrPersonCode,
+            InstrPersonName,
+            InstrPersonSalary,
+            ExpensesName1,
+            ExpensesRatio1,
+            ExpensesCode1,
+            ExpensesName2,
+            ExpensesRatio2,
+            ExpensesCode2,
+            ExpensesName3,
+            ExpensesRatio3,
+            ExpensesCode3,
+        }
+        #endregion
+        #region ”äŠr—p‚É�eƒf�[ƒ^‚ðŽæ“¾‚·‚éSQL‚ð�ì�¬‚·‚é
+        /// <summary>
+        /// ”äŠr—p‚É�eƒf�[ƒ^‚ðŽæ“¾‚·‚éSQL‚ð�ì�¬‚·‚é
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateParentSQL(int ConstrCode, ref string strSQL)
+        {
+            try
+            {
+                int ConstrPeriod = CommonMotions.cnvInt(m_DspCtrl[(int)DspCnt.ConstructionPeriod].Text);
+
+                strSQL = "SELECT A.CONSTRUCTIONCODE,";
+                strSQL += " CASE A.ConstructionPeriodStart2 WHEN TO_DATE('0001/01/01') THEN A.ConstructionPeriodStart ELSE A.ConstructionPeriodStart2 END StDate,";
+                strSQL += " CASE A.ConstructionPeriodEnd2 WHEN TO_DATE('0001/01/01') THEN A.ConstructionPeriodEnd ELSE A.ConstructionPeriodEnd2 END EdDate,";
+                strSQL += " B.PERSONCODE B1, B.PERSONNAME B2, B.MONTHLYSALARY B3,";
+                strSQL += " C.PERSONCODE C1, C.PERSONNAME C2, C.MONTHLYSALARY C3,";
+                strSQL += " D.PERSONCODE D1, D.PERSONNAME D2, D.MONTHLYSALARY D3,";
+                strSQL += " E1.NAMESTRING E1, E.EXPENSESRATIO E2, E.NAMECODE E3,";
+                strSQL += " F1.NAMESTRING F1, F.EXPENSESRATIO F2, F.NAMECODE F3,";
+                strSQL += " G1.NAMESTRING G1, G.EXPENSESRATIO G2, G.NAMECODE G3";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.CONSTRSUBPERSONCODE";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR";
+                strSQL += " , PERSONINCHARGEMASTER B";
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER E ON E.DEPARTMENTCODE = B.DEPARTMENTCODE AND E.EXPENSESPERIOD = {0} AND E.NAMECODE = 3", ConstrPeriod);
+                strSQL += string.Format(" LEFT JOIN DIVISIONMASTER E1 ON E1.DIVISIONCODE = {0} AND E1.NAMECODE = E.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER F ON F.DEPARTMENTCODE = B.DEPARTMENTCODE AND F.EXPENSESPERIOD = {0} AND F.NAMECODE = 2", ConstrPeriod);
+                strSQL += string.Format(" LEFT JOIN DIVISIONMASTER F1 ON F1.DIVISIONCODE = {0} AND F1.NAMECODE = F.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER G ON G.DEPARTMENTCODE = B.DEPARTMENTCODE AND G.EXPENSESPERIOD = {0} AND G.NAMECODE = 1", ConstrPeriod);
+                strSQL += string.Format(" LEFT JOIN DIVISIONMASTER G1 ON G1.DIVISIONCODE = {0} AND G1.NAMECODE = G.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ConstrCode);
+                strSQL += " AND B.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ‘�Œ¸�HŽ–‚Ì�eƒf�[ƒ^Žæ“¾
+        /// <summary>
+        /// ‘�Œ¸�HŽ–‚Ì�eƒf�[ƒ^Žæ“¾
+        /// </summary>
+        /// <returns></returns>
+        private bool GetFluctuationParent(IOConstructionBaseInfo cbiDB, IOConstructionLink cbLinkDB,
+                                            bool TyingDataFlag, ref ArrayList ParentData, ref int ProcConstrCode)
+        {
+            try
+            {
+                // ----- �HŽ–�Ú�×‘ä’ ƒf�[ƒ^Žæ“¾
+                if (TyingDataFlag)
+                {
+                    string strLink = cbLinkDB.CreatePrimarykeyString(m_ConstructionCode);
+                    ConstructionLink LinkRec = new ConstructionLink();
+                    if (cbLinkDB.SelectAction(strLink, ref LinkRec, false))
+                    {
+                        ProcConstrCode = m_ConstructionCode;
+                    }
+                    else
+                    {
+                        strLink = string.Format(" WHERE FLUCTUATIONCODE = {0}", m_ConstructionCode);
+                        if (!cbLinkDB.SelectAction(strLink, ref LinkRec, false)) return false;
+                        ProcConstrCode = LinkRec.ConstructionCode;
+                    }
+                }
+                else
+                {
+                    ProcConstrCode = m_ConstructionCode;
+                }
+
+                // �e‚Æ‚È‚éƒf�[ƒ^Žæ“¾
+                string strParentSQL = string.Empty;
+                CreateParentSQL(ProcConstrCode, ref strParentSQL);
+                if (!cbiDB.ExecuteReader(strParentSQL, ref ParentData, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         // ---------- �HŽ–—\ŽZ�‘ƒf�[ƒ^•Ï�X�ˆ—�
         #region �HŽ–—\ŽZ�‘�Fƒf�[ƒ^•Ï�X
         /// <summary>
@@ -472,7 +587,9 @@
                                         IOConstructionBudget BudgetDB,
                                         IOConstructionBudgetDetail BudgetDDB,
                                         IOMPersonInCharge PersonDB,
-                                        int TotalOrdersPrice)
+                                        int TotalOrdersPrice,
+                                        ArrayList ParentData,
+                                        int ProcConstrCode)
         {
             FrmConstructionBudget frm = new FrmConstructionBudget();
             try
@@ -492,55 +609,25 @@
                 // ƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í�ˆ—�‚µ‚È‚¢
                 if (!BudgetDB.SelectAction(strBudget, ref BudgetRec, false)) return true;
 
-                // �HŽ–’S“–ŽÒƒR�[ƒhŽæ“¾
-                ComboBox ConstructorCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstructionPersonCode];
-                int ConstrPersonCode = CommonMotions.cnvInt(ConstructorCombBox.SelectedValue);
-                string ConstrPersonName = ConstructorCombBox.SelectedText;
+                /// ƒf�[ƒ^ƒZƒbƒg�E•Ï�X”»’è
+                object[] objRec = (object[])ParentData[0];
 
-                // �HŽ–•›’S“–ŽÒƒR�[ƒhŽæ“¾
-                ComboBox AssistantCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstrSubPersonCode];
-                int AssistantCode = CommonMotions.cnvInt(AssistantCombBox.SelectedValue);
-                string AssistantName = AssistantCombBox.SelectedText;
-
-                // �HŽ–Žw“±ˆõƒR�[ƒhŽæ“¾
-                ComboBox InstCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstructionInstructor];
-                int InstructorCode = CommonMotions.cnvInt(InstCombBox.SelectedValue);
-                string InstructorName = InstCombBox.SelectedText;
-
-                // ’S“–ŽÒ‚Ìƒ}ƒXƒ^ƒf�[ƒ^Žæ“¾
-                string strPerson = PersonDB.CreatePrimarykeyString(ConstrPersonCode);
-                PersonInChargeMaster personRec = new PersonInChargeMaster();
-                PersonDB.SelectAction(strPerson, ref personRec, false);
-
-                // ’S“–ŽÒ•”��Œo”ïŽæ“¾
-                ArrayList ExpensesList = new ArrayList();
-                GetExpensesList(personRec.DepartmentCode, ref ExpensesList);
-
-                // ----- �HŽ–—\ŽZ�‘ƒf�[ƒ^�ˆ—�
-                /// ƒf�[ƒ^ƒZƒbƒg�E•Ï�X”»’è
-                bool bChangeCode = BudgetDataSetCheck(ConstrPersonCode, ConstrPersonName, personRec.MonthlySalary,
-                                                AssistantCode, AssistantName, InstructorCode, InstructorName, ref BudgetRec);
-                // ˆá‚¢‚ª‚ ‚ê‚Î�X�V
-                if (bChangeCode)
-                {
-                    if (!BudgetDB.UpdateAction(strBudget, BudgetRec, false)) return false;
-                }
                 // ----- �HŽ–—\ŽZ�‘–¾�×ƒf�[ƒ^�ˆ—�
                 // �HŽ–’S“–ŽÒ
-                if (!BudgetDetailDataSalarySet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.PayrollExpenses, ConstrPersonCode, ConstrPersonName
-                                                    , personRec.MonthlySalary, ExpensesList)) return false;
+                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
+                                                    , (int)FrmConstructionBudget.DataGroup.PayrollExpenses, objRec)) return false;
 
                 // �HŽ–•›’S“–ŽÒ
-                if (!BudgetDetailDataSalarySet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.AssistantCosts, AssistantCode, AssistantName
-                                                    , CommonDefine.AssistantMonthryCost, ExpensesList)) return false;
+                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
+                                                    , (int)FrmConstructionBudget.DataGroup.AssistantCosts, objRec)) return false;
 
                 // �HŽ–Žw“±ˆõ
-                if (!BudgetDetailDataSalarySet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.InstructorCosts, InstructorCode, InstructorName
-                                                    , CommonDefine.InstructorMonthryCost, ExpensesList)) return false;
+                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
+                                                    , (int)FrmConstructionBudget.DataGroup.InstructorCosts, objRec)) return false;
 
+                // ----- �HŽ–—\ŽZ�‘ƒf�[ƒ^�ˆ—�
+                if (!BudgetDataSet(BudgetDB, BudgetRec, objRec, TotalOrdersPrice)) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -611,117 +698,154 @@
         }
         #endregion
 
-        #region �HŽ–—\ŽZ�‘�Fƒf�[ƒ^ƒZƒbƒg�E•Ï�X”»’è
+        #region �HŽ–—\ŽZ�‘�Fƒf�[ƒ^•Ï�X
         /// <summary>
-        /// �HŽ–—\ŽZ�‘�Fƒf�[ƒ^ƒZƒbƒg�E•Ï�X”»’è
+        /// �HŽ–—\ŽZ�‘�Fƒf�[ƒ^•Ï�X
         /// </summary>
-        /// <param name="ApprovalNo"></param>
         /// <returns></returns>
-        private bool BudgetDataSetCheck(int ConstrPersonCode, string ConstrPersonName, double MonthlySalary,
-                                    int AssistantCode, string AssistantName,
-                                    int InstructorCode, string InstructorName,
-                                    ref ConstructionBudget BudgetRec)
+        private bool BudgetDataSet(IOConstructionBudget BudgetDB, ConstructionBudget BudgetRec, object[] objRec, int TotalOrdersPrice)
         {
-            bool bChangeCode = false;
             try
             {
-                // ’S“–ŽÒ�ˆ—�
-                if (BudgetRec.CreatorCode == ConstrPersonCode) goto SecondProc;
+                bool UpDateFlg = false;
 
-                // �o‹Î•â�³’lŒW�”‚ðŠ|‚¯‚ÄŒŽŽû‚ð‹�‚ß‚é
-                MonthlySalary = CommonMotions.cnvRound(MonthlySalary * (double)CommonDefine.s_SalaryCorrection);
+                // �HŽ–’S“–ŽÒ
+                int ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
+                double C_MonthryCost = CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ConstrPersonSalary]);
+                string C_ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.ConstrPersonName]);
 
-                if (ConstrPersonCode == 0)
+                // �HŽ–•›’S“–ŽÒ
+                int AssistantCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.AssistPersonCode]);
+                double A_MonthryCost = CommonDefine.AssistantMonthryCost;
+                string A_ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.AssistPersonName]);
+
+                // �HŽ–Žw“±ˆõ
+                int InstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.InstrPersonCode]);
+                double I_MonthryCost = CommonDefine.InstructorMonthryCost;
+                string I_ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.InstrPersonName]);
+
+                // Œ»�Ý�HŠúŽæ“¾
+                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
+                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
+
+                // �HŠú”»’è
+                if (StartDT == BudgetRec.ConstructionStart && CompDT == BudgetRec.ConstructionEnd)
                 {
-                    BudgetRec.CreatorCode = 0;
-                    BudgetRec.CreatorName = string.Empty;
-                    BudgetRec.CreatorCosts = 0;
-                    BudgetRec.SalaryFlg = 0;
-                    BudgetRec.SalaryDays = 0;
                 }
                 else
                 {
-                    // ’S“–ŽÒ‹‹—^
-                    BudgetRec.CreatorCosts = MonthlySalary * BudgetRec.ConstructionTimes;
-                    // ’S“–ŽÒ‹‹—^�U•ª‹æ•ª
-                    BudgetRec.SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
-                    // ’S“–ŽÒ‹‹—^�U•ª“ú�”
-                    BudgetRec.SalaryDays = 0;
-
-                    // ’S“–ŽÒƒR�[ƒh
-                    BudgetRec.CreatorCode = ConstrPersonCode;
-                    // ’S“–ŽÒ–¼
-                    BudgetRec.CreatorName = ConstrPersonName;
+                    BudgetRec.ConstructionStart = StartDT;
+                    BudgetRec.ConstructionEnd = CompDT;
+                    UpDateFlg = true;
                 }
-                bChangeCode = true;
 
-            SecondProc:
+                // ‹‹—^‹àŠzŽæ“¾
+                double ExecutionAmount = 0;
+                double AmountConfigRate = 0;
 
-                // •›’S“–ŽÒ�ˆ—�
-                if (BudgetRec.AssistantCode == AssistantCode) goto ThirdProc;
-
-                if (AssistantCode == 0)
+                // ----- ’S“–ŽÒ�ˆ—�
+                if (BudgetRec.CreatorCode != ConstructorCode)
                 {
-                    BudgetRec.AssistantCode = 0;
-                    BudgetRec.AssistantName = string.Empty;
-                    BudgetRec.AssistantCosts = 0;
-                    BudgetRec.A_SalaryFlg = 0;
-                    BudgetRec.A_SalaryDays = 0;
+                    if (ConstructorCode == 0)
+                    {
+                        BudgetRec.CreatorCode = 0;
+                        BudgetRec.CreatorName = string.Empty;
+                        BudgetRec.CreatorCosts = 0;
+                        BudgetRec.SalaryFlg = 0;
+                        BudgetRec.SalaryDays = 0;
+                    }
+                    else
+                    {
+                        CalcPayValueData(C_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // ’S“–ŽÒ‹‹—^
+                        BudgetRec.CreatorCosts = ExecutionAmount;
+                        // ’S“–ŽÒ‹‹—^�U•ª‹æ•ª
+                        BudgetRec.SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
+                        // ’S“–ŽÒ‹‹—^�U•ª“ú�”
+                        BudgetRec.SalaryDays = 0;
+                        // ’S“–ŽÒƒR�[ƒh
+                        BudgetRec.CreatorCode = ConstructorCode;
+                        // ’S“–ŽÒ–¼
+                        BudgetRec.CreatorName = C_ConstructorName;
+                    }
+                    UpDateFlg = true;
                 }
-                else
+
+                // •›’S“–ŽÒ�ˆ—�
+                if (BudgetRec.AssistantCode != AssistantCode)
                 {
-                    // •›’S“–ŽÒ‹‹—^
-                    BudgetRec.AssistantCosts = CommonDefine.AssistantMonthryCost * BudgetRec.ConstructionTimes;
-                    // •›’S“–ŽÒ‹‹—^�U•ª‹æ•ª
-                    BudgetRec.A_SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
-                    // •›’S“–ŽÒ‹‹—^�U•ª“ú�”
-                    BudgetRec.A_SalaryDays = 0;
 
-                    // •›’S“–ŽÒƒR�[ƒh
-                    BudgetRec.AssistantCode = AssistantCode;
-                    // •›’S“–ŽÒ–¼
-                    BudgetRec.AssistantName = AssistantName;
+                    if (AssistantCode == 0)
+                    {
+                        BudgetRec.AssistantCode = 0;
+                        BudgetRec.AssistantName = string.Empty;
+                        BudgetRec.AssistantCosts = 0;
+                        BudgetRec.A_SalaryFlg = 0;
+                        BudgetRec.A_SalaryDays = 0;
+                    }
+                    else
+                    {
+                        ExecutionAmount = 0;
+                        AmountConfigRate = 0;
+                        CalcPayValueData(A_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // •›’S“–ŽÒ‹‹—^
+                        BudgetRec.AssistantCosts = ExecutionAmount;
+                        // •›’S“–ŽÒ‹‹—^�U•ª‹æ•ª
+                        BudgetRec.A_SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
+                        // •›’S“–ŽÒ‹‹—^�U•ª“ú�”
+                        BudgetRec.A_SalaryDays = 0;
+
+                        // •›’S“–ŽÒƒR�[ƒh
+                        BudgetRec.AssistantCode = AssistantCode;
+                        // •›’S“–ŽÒ–¼
+                        BudgetRec.AssistantName = A_ConstructorName;
+                    }
+                    UpDateFlg = true;
                 }
-                bChangeCode = true;
 
-            ThirdProc:
-
                 // Žw“±ˆõ�ˆ—�
-                if (BudgetRec.InstructorCode == InstructorCode) goto FourthProc;
+                if (BudgetRec.InstructorCode != InstructorCode)
+                {
 
-                if (InstructorCode == 0)
-                {
-                    BudgetRec.InstructorCode = 0;
-                    BudgetRec.InstructorName = string.Empty;
-                    BudgetRec.InstructorCosts = 0;
-                    BudgetRec.I_SalaryFlg = 0;
-                    BudgetRec.I_SalaryDays = 0;
+                    if (InstructorCode == 0)
+                    {
+                        BudgetRec.InstructorCode = 0;
+                        BudgetRec.InstructorName = string.Empty;
+                        BudgetRec.InstructorCosts = 0;
+                        BudgetRec.I_SalaryFlg = 0;
+                        BudgetRec.I_SalaryDays = 0;
+                    }
+                    else
+                    {
+                        ExecutionAmount = 0;
+                        AmountConfigRate = 0;
+                        CalcPayValueData(I_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // Žw“±ˆõŽÒ‹‹—^
+                        BudgetRec.InstructorCosts = ExecutionAmount;
+                        // Žw“±ˆõŽÒ‹‹—^�U•ª‹æ•ª
+                        BudgetRec.I_SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
+                        // Žw“±ˆõŽÒ‹‹—^�U•ª“ú�”
+                        BudgetRec.I_SalaryDays = 0;
+
+                        // Žw“±ˆõŽÒƒR�[ƒh
+                        BudgetRec.InstructorCode = InstructorCode;
+                        // Žw“±ˆõŽÒ–¼
+                        BudgetRec.InstructorName = I_ConstructorName;
+                    }
+                    UpDateFlg = true;
                 }
-                else
+                if (UpDateFlg)
                 {
-                    // Žw“±ˆõŽÒ‹‹—^
-                    BudgetRec.InstructorCosts = CommonDefine.InstructorMonthryCost * BudgetRec.ConstructionTimes;
-                    // Žw“±ˆõŽÒ‹‹—^�U•ª‹æ•ª
-                    BudgetRec.I_SalaryFlg = (int)CommonDefine.SalaryDevision.All;       // ‘S“ú
-                    // Žw“±ˆõŽÒ‹‹—^�U•ª“ú�”
-                    BudgetRec.I_SalaryDays = 0;
+                    string strSQL = BudgetDB.CreatePrimarykeyString(BudgetRec.ConstructionCode);
+                    if (!BudgetDB.UpdateAction(strSQL, BudgetRec, false)) return false;
+
                 }
-
-                // Žw“±ˆõŽÒƒR�[ƒh
-                BudgetRec.InstructorCode = InstructorCode;
-                // Žw“±ˆõŽÒ–¼
-                BudgetRec.InstructorName = InstructorName;
-
-                bChangeCode = true;
-
-            FourthProc:
-
-                return bChangeCode;
+                return true;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return bChangeCode;
+                return false;
             }
         }
         #endregion
@@ -804,41 +928,65 @@
         /// <summary>
         /// �HŽ–—\ŽZ�‘�F’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõƒZƒbƒg
         /// </summary>
-        /// <param name="frm"></param>
-        /// <param name="BudgetDDB"></param>
-        /// <param name="BudgetRec"></param>
-        /// <param name="TotalOrdersPrice"></param>
-        /// <param name="GroupNo"></param>
-        /// <param name="ConstructorCode"></param>
-        /// <param name="ConstructorName"></param>
-        /// <param name="MonthryCost"></param>
-        /// <param name="ExpensesList"></param>
         /// <returns></returns>
-        private bool BudgetDetailDataSalarySet(FrmConstructionBudget frm, IOConstructionBudgetDetail BudgetDDB, ConstructionBudget BudgetRec, int TotalOrdersPrice
-                                                    , int GroupNo, int ConstructorCode, string ConstructorName
-                                                    , double MonthryCost, ArrayList ExpensesList)
+        private bool BudgetDetailDataSet(FrmConstructionBudget frm, IOConstructionBudgetDetail BudgetDDB, ConstructionBudget BudgetRec,
+                                    int TotalOrdersPrice, int GroupCode, object[] objRec)
         {
             try
             {
-                string strSQL = BudgetDDB.CreatePrimarykeyString(m_ConstructionCode, GroupNo);
+                string strSQL = BudgetDDB.CreatePrimarykeyString(m_ConstructionCode, GroupCode);
                 ConstructionBudgetDetail DetailRec = new ConstructionBudgetDetail();
                 // �HŽ–—\ŽZ�‘–¾�×ƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í�ì�¬‚ð‘O’ñ‚É�ˆ—�‘±�s
-                bool UpdateFlg = BudgetDDB.SelectAction(strSQL, ref DetailRec, false);
+                bool ExistsFlg = BudgetDDB.SelectAction(strSQL, ref DetailRec, false);
 
-                // ’S“–ŽÒ‚ª“¯‚¶‚È‚ç‚Î�ˆ—�‚µ‚È‚¢
-                if (DetailRec.CompanyCode == ConstructorCode) return true;
+                int ConstructorCode = 0;
+                double MonthryCost = 0;
+                string ConstructorName = string.Empty;
+                int TargetParson = 0;
+                switch (GroupCode)
+                {
+                    // �HŽ–’S“–ŽÒ
+                    case (int)FrmConstructionBudget.DataGroup.PayrollExpenses:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
+                        MonthryCost = CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ConstrPersonSalary]);
+                        ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.ConstrPersonName]);
+                        TargetParson = BudgetRec.CreatorCode;
+                        break;
 
-                // ‹‹—^‹àŠzƒZƒbƒg
+                    // �HŽ–•›’S“–ŽÒ
+                    case (int)FrmConstructionBudget.DataGroup.AssistantCosts:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.AssistPersonCode]);
+                        MonthryCost = CommonDefine.AssistantMonthryCost;
+                        ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.AssistPersonName]);
+                        TargetParson = BudgetRec.AssistantCode;
+                        break;
+
+                    // �HŽ–Žw“±ˆõ
+                    case (int)FrmConstructionBudget.DataGroup.InstructorCosts:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.InstrPersonCode]);
+                        MonthryCost = CommonDefine.InstructorMonthryCost;
+                        ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.InstrPersonName]);
+                        TargetParson = BudgetRec.InstructorCode;
+                        break;
+                }
+
+                // Œ»�Ý�HŠúŽæ“¾
+                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
+                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
+
+                // ’S“–ŽÒ�E�HŠú‚ª“¯‚¶‚È‚ç‚Î�ˆ—�‚µ‚È‚¢
+                if (TargetParson == ConstructorCode && StartDT == BudgetRec.ConstructionStart && CompDT == BudgetRec.ConstructionEnd) return true;
+
+                // ‹‹—^‹àŠzŽæ“¾
                 double ExecutionAmount = 0;
                 double AmountConfigRate = 0;
-                CalcPayValueData(MonthryCost, TotalOrdersPrice,
-                                BudgetRec.ConstructionStart, BudgetRec.ConstructionEnd,
-                                ref ExecutionAmount, ref AmountConfigRate);
+                CalcPayValueData(MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
 
-                // –³‚µ‚ÍƒNƒŠƒA‚µ‚Ä‹ó‚É‚È‚Á‚½ƒf�[ƒ^‚ðƒZƒbƒg
+                
                 if (ConstructorCode == 0)
-                {
-                    ClearConstructionBudgetDetailRec(ref DetailRec);
+                {   // –³‚µ‚Íƒf�[ƒ^�í�œ
+                    if (ExistsFlg) if (!BudgetDDB.DeleteAction(strSQL, false)) return false;
+                    return true;
                 }
                 else
                 {
@@ -851,7 +999,7 @@
                 DetailRec.CompanyName = ConstructorName;
 
                 // ----- �HŽ–—\ŽZ�‘–¾�×ƒf�[ƒ^�X�V
-                if (UpdateFlg)
+                if (ExistsFlg)
                 {
                     if (!BudgetDDB.UpdateAction(strSQL, DetailRec, false)) return false;
                 }
@@ -859,17 +1007,27 @@
                 {
                     // ƒL�[•”ƒZƒbƒg
                     DetailRec.ConstructionCode = m_ConstructionCode;
-                    DetailRec.GroupCount = GroupNo;
+                    DetailRec.GroupCount = GroupCode;
                     DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;
 
-                    frm.GetTitileParametar = GroupNo;
+                    frm.GetTitileParametar = GroupCode;
                     DetailRec.FirstString = frm.GetTitleString;
                     if (!BudgetDDB.InsertAction(DetailRec, false)) return false;
                 }
 
                 // ’S“–ŽÒ‚Ì�ê�‡‚Ì‚Ý
-                if (GroupNo == (int)FrmConstructionBudget.DataGroup.PayrollExpenses)
+                if (GroupCode == (int)FrmConstructionBudget.DataGroup.PayrollExpenses)
                 {
+                    ArrayList ExpensesList = new ArrayList();
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName1]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio1]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode1]) });
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName2]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio2]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode2]) });
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName3]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio3]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode3]) });
                     // Œo”ïƒf�[ƒ^�X�V�i’S“–ŽÒ‚ª•Ï‚í‚Á‚½�ê�‡‚Í•”��•Ï‚í‚Á‚Ä‚¢‚È‚­‚Ä‚àŒvŽZ�j
                     if (!BudgetSetExpenses(BudgetDDB, TotalOrdersPrice, ExpensesList)) return false;
                 }
@@ -889,14 +1047,6 @@
         /// <summary>
         /// �HŽ–�Ú�×‘ä’ ƒf�[ƒ^•Ï�X
         /// </summary>
-        /// <param name="cbiDB"></param>
-        /// <param name="LedgerDB"></param>
-        /// <param name="LedgerDDB"></param>
-        /// <param name="LedgerEDB"></param>
-        /// <param name="PersonDB"></param>
-        /// <param name="cbLinkDB"></param>
-        /// <param name="TotalOrdersPrice"></param>
-        /// <param name="TyingDataFlag"></param>
         /// <returns></returns>
         private bool LedgerDataChange(IOConstructionBaseInfo cbiDB,
                                         IOConstructionLedger LedgerDB,
@@ -906,36 +1056,15 @@
                                         IOConstructionLink cbLinkDB,
                                         int TotalOrdersPrice,
                                         bool TyingDataFlag,
+                                        FrmConstructionLedger frm,
+                                        ArrayList ParentData,
+                                        int ProcConstrCode,
                                         ref bool LedgerReCalc,
                                         ref int ConstrCode)
         {
-            FrmConstructionLedger frm = new FrmConstructionLedger();                    // �HŽ–�Ú�×‘ä’ “ü—Í
             try
             {
-                // ----- “–�ˆ—�“à‚Å‚Ì�HŽ–”Ô�†Ši”[ƒGƒŠƒA
-                int ProcConstrCode = 0;
-
-                // ----- �HŽ–�Ú�×‘ä’ ƒf�[ƒ^Žæ“¾
-                if (TyingDataFlag)
-                {
-                    string strLink = cbLinkDB.CreatePrimarykeyString(m_ConstructionCode);
-                    ConstructionLink LinkRec = new ConstructionLink();
-                    if (cbLinkDB.SelectAction(strLink, ref LinkRec, false))
-                    {
-                        ProcConstrCode = m_ConstructionCode;
-                    }
-                    else
-                    {
-                        strLink = string.Format(" WHERE FLUCTUATIONCODE = {0}", m_ConstructionCode);
-                        if (!cbLinkDB.SelectAction(strLink, ref LinkRec, false)) return false;
-                        ProcConstrCode = LinkRec.ConstructionCode;
-                    }
-                }
-                else
-                {
-                    ProcConstrCode = m_ConstructionCode;
-                }
-
+                // �eƒR�[ƒh‚µ‚©‘ä’ ‚Í‘¶�Ý‚µ‚È‚¢
                 string strLedger = LedgerDB.CreatePrimarykeyString(ProcConstrCode);
                 ConstructionLedger LedgerRec = new ConstructionLedger();
                 // ƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í�ˆ—�‚µ‚È‚¢
@@ -944,69 +1073,46 @@
                 // �Ú�×‘ä’ “ü—ÍŠ®—¹�Ï‚Ý‚È‚ç‚Î�ˆ—�‚µ‚È‚¢
                 if (LedgerRec.ComplateFlg == (int)CommonDefine.ComplateTitleNo.Complated) return true;
 
-                // �HŽ–’S“–ŽÒƒR�[ƒhŽæ“¾
-                ComboBox ConstructorCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstructionPersonCode];
-                int ConstrPersonCode = CommonMotions.cnvInt(ConstructorCombBox.SelectedValue);
-                string ConstrPersonName = ConstructorCombBox.SelectedText;
-
-                // �HŽ–•›’S“–ŽÒƒR�[ƒhŽæ“¾
-                ComboBox AssistantCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstrSubPersonCode];
-                int AssistantCode = CommonMotions.cnvInt(AssistantCombBox.SelectedValue);
-                string AssistantName = AssistantCombBox.SelectedText;
-
-                // �HŽ–Žw“±ˆõƒR�[ƒhŽæ“¾
-                ComboBox InstCombBox = (ComboBox)m_DspCtrl[(int)DspCnt.ConstructionInstructor];
-                int InstructorCode = CommonMotions.cnvInt(InstCombBox.SelectedValue);
-                string InstructorName = InstCombBox.SelectedText;
-
-                // ’S“–ŽÒ‚Ìƒ}ƒXƒ^ƒf�[ƒ^Žæ“¾
-                string strPerson = PersonDB.CreatePrimarykeyString(ConstrPersonCode);
-                PersonInChargeMaster personRec = new PersonInChargeMaster();
-                PersonDB.SelectAction(strPerson, ref personRec, false);
-
-                // ’S“–ŽÒ•”��Œo”ïŽæ“¾
-                ArrayList ExpensesList = new ArrayList();
-                GetExpensesList(personRec.DepartmentCode, ref ExpensesList);
-
-                // ----- �HŽ–�Ú�×‘ä’ ƒf�[ƒ^�ˆ—�
                 /// ƒf�[ƒ^ƒZƒbƒg�E•Ï�X”»’è
                 bool bChangeCode = false;
-
+                object[] objRec = (object[])ParentData[0];
                 // ----- �HŽ–�Ú�×‘ä’ –¾�×ƒf�[ƒ^�ˆ—�
                 // �HŽ–’S“–ŽÒ
                 if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Payroll,
-                                                    ConstrPersonCode, ConstrPersonName, personRec.MonthlySalary,
-                                                    ExpensesList, LedgerRec,
-                                                    ref bChangeCode)) return false;
+                                                    objRec, LedgerRec, ref bChangeCode)) return false;
 
                 // �HŽ–•›’S“–ŽÒ
                 if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Assistant,
-                                                    AssistantCode, AssistantName, (double)CommonDefine.AssistantMonthryCost,
-                                                    ExpensesList, LedgerRec,
-                                                    ref bChangeCode)) return false;
+                                                    objRec, LedgerRec, ref bChangeCode)) return false;
 
                 // �HŽ–Žw“±ˆõ
                 if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Instructor,
-                                                    InstructorCode, InstructorName, (double)CommonDefine.InstructorMonthryCost,
-                                                    ExpensesList, LedgerRec,
-                                                    ref bChangeCode)) return false;
+                                                    objRec, LedgerRec, ref bChangeCode)) return false;
 
-                // �HŽ–�î•ñ‚ðŽæ“¾‚·‚é
-                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                string strBase = cbiDB.CreatePrimarykeyString(ProcConstrCode);
-                if (!cbiDB.SelectAction(strBase, ref BaseRec, false)) return false;
-                // �HŠú‚Ìƒ`ƒFƒbƒN
-                DateTime StDate = BaseRec.ConstructionPeriodStart;
-                DateTime EdDate = BaseRec.ConstructionPeriodEnd;
-                // ‰„’·‚ª‚ ‚é�ê�‡‚Í‰„’·‚ð“ü‚ê‚é
-                if (BaseRec.ConstructionPeriodEnd2 != DateTime.MinValue) EdDate = BaseRec.ConstructionPeriodEnd2;
-                if (StDate != LedgerRec.ConstructionStart) bChangeCode = false;
-                if (EdDate != LedgerRec.ConstructionEnd) bChangeCode = false;
-
                 // ˆá‚¢‚ª‚ ‚ê‚Î�ˆ—�‚·‚é
                 if (bChangeCode) LedgerReCalc = true;
-                ConstrCode = ProcConstrCode;
 
+                // ----- �HŽ–�Ú�×‘ä’ ƒf�[ƒ^�ˆ—�
+                // Œ_–ñ�HŠúŠJŽn�EŒ_–ñ�HŠúŠ®—¹
+                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
+                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
+                if (LedgerRec.ConstructionStart != StartDT)
+                {
+                    if (!LedgerDB.UpdateFeild(LedgerRec.ConstructionCode,
+                                            (int)IOConstructionLedger.DataColumn.ConstructionStart,
+                                            StartDT,
+                                            false)) return false;
+                    LedgerReCalc = true;
+                }
+                if (LedgerRec.ConstructionEnd != CompDT)
+                {
+                    if (!LedgerDB.UpdateFeild(LedgerRec.ConstructionCode,
+                                            (int)IOConstructionLedger.DataColumn.ConstructionEnd,
+                                            CompDT,
+                                            false)) return false;
+                    LedgerReCalc = true;
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -1014,10 +1120,6 @@
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-            finally
-            {
-                frm.Dispose(); frm = null;
-            }
         }
         #endregion
 
@@ -1049,22 +1151,10 @@
         /// <summary>
         /// �HŽ–�Ú�×‘ä’ –¾�×�F’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõƒZƒbƒg
         /// </summary>
-        /// <param name="LedgerDDB"></param>
-        /// <param name="frm"></param>
-        /// <param name="TotalOrdersPrice"></param>
-        /// <param name="GroupCode"></param>
-        /// <param name="ConstructorCode"></param>
-        /// <param name="ConstructorName"></param>
-        /// <param name="MonthryCost"></param>
-        /// <param name="ExpensesList"></param>
-        /// <param name="LedgerRec"></param>
-        /// <param name="bChangeCode"></param>
         /// <returns></returns>
         private bool LedgerDetailDataSalarySet(IOConstructionLedgerDetail LedgerDDB, int ProcConstrCode, FrmConstructionLedger frm
                                                     , int TotalOrdersPrice, int GroupCode
-                                                    , int ConstructorCode, string ConstructorName, double MonthryCost
-                                                    , ArrayList ExpensesList, ConstructionLedger LedgerRec
-                                                    , ref bool bChangeCode)
+                                                    , object[] objRec, ConstructionLedger LedgerRec, ref bool bChangeCode)
         {
             try
             {
@@ -1074,22 +1164,32 @@
                 // �HŽ–�Ú�×‘ä’ –¾�×ƒf�[ƒ^‚ª–³‚¢�ê�‡‚Í�ì�¬‚ð‘O’ñ‚É�ˆ—�‘±�s
                 bool bExists = LedgerDDB.SelectAction(strSQL, ref DetailRec, false);
 
-                // ’S“–ŽÒ‚ª“¯‚¶‚È‚ç‚Î�ˆ—�‚µ‚È‚¢
-                if (DetailRec.CompanyCode == ConstructorCode) return true;
+                bool CurDataChange = false;
 
-                // –³‚µ‚ÍƒNƒŠƒA‚µ‚Ä‹ó‚É‚È‚Á‚½ƒf�[ƒ^‚ðƒZƒbƒg
-                if (ConstructorCode == 0)
+                int ConstructorCode = 0;
+                double MonthryCost = 0;
+                switch (GroupCode)
                 {
-                    ClearConstructionLedgerDetailRec(ref DetailRec);
-                    if (bExists)
-                    {
-                        if (!LedgerDDB.UpdateAction(strSQL, DetailRec, false)) return false;
-                    }
-                    return true;
+                    // �HŽ–’S“–ŽÒ
+                    case (int)FrmConstructionLedger.DataGroup.Payroll:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
+                        MonthryCost = CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ConstrPersonSalary]);
+                        break;
+                    // �HŽ–•›’S“–ŽÒ
+                    case (int)FrmConstructionLedger.DataGroup.Assistant:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.AssistPersonCode]);
+                        MonthryCost = CommonDefine.AssistantMonthryCost;
+                        break;
+
+                    // �HŽ–Žw“±ˆõ
+                    case (int)FrmConstructionLedger.DataGroup.Instructor:
+                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.InstrPersonCode]);
+                        MonthryCost = CommonDefine.InstructorMonthryCost;
+                        break;
                 }
 
-                // Œ»’S“–ŽÒ‚ÍŽg—p�I—¹
-                if (bExists)
+                // ƒf�[ƒ^‚ª‘¶�Ý‚µ�A’S“–ŽÒ‚ªˆá‚¤�ê�‡‚ÍŒ»’S“–ŽÒ‚ÍŽg—p�I—¹
+                if (bExists && DetailRec.CompanyCode != ConstructorCode)
                 {
                     if (!LedgerDDB.UpdateFeild(DetailRec.ConstructionCode,
                                             (int)IOConstructionLedgerDetail.DataColumn.OperatingFlg,
@@ -1097,25 +1197,33 @@
                                             DetailRec.GroupCount,
                                             DetailRec.LineCount,
                                             false)) return false;
+                    // ƒf�[ƒ^•Ï�X—L
+                    CurDataChange = true;
                 }
 
+                // Œ»�Ý�HŠúŽæ“¾
+                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
+                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
+
+                // �V‹Kƒf�[ƒ^–³‚µ‚Í“o˜^‚µ‚È‚¢
+                if (ConstructorCode == 0) return true;
+
+                // ’S“–‚ª“¯‚¶‚ÅŠúŠÔ‚à“¯‚¶�ê�‡‚Í�ˆ—�‚µ‚È‚¢
+                if (bExists && DetailRec.CompanyCode == ConstructorCode
+                    && LedgerRec.ConstructionStart == StartDT && LedgerRec.ConstructionEnd == CompDT) return true;
+
                 // ‹‹—^‹àŠzƒZƒbƒg
                 double ExecutionAmount = 0;
                 double AmountConfigRate = 0;
-                CalcPayValueData(MonthryCost, TotalOrdersPrice,
-                                LedgerRec.ConstructionStart, LedgerRec.ConstructionEnd,
-                                ref ExecutionAmount, ref AmountConfigRate);
+                CalcPayValueData(MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
 
                 // ----- �V’S“–ŽÒ‚Ì�HŽ–—\ŽZ�‘–¾�×ƒf�[ƒ^�ì�¬
-                DetailRec.ConstructionCode = ProcConstrCode;                                // �HŽ–”Ô�†
-                DetailRec.GroupCount = GroupCode;                                           // ƒOƒ‹�[ƒv”Ô�†
-                DetailRec.LineCount++;                                                      // �s”Ô�†
+                ClearConstructionLedgerDetailRec(ref DetailRec);
                 frm.GetTitileParametar = GroupCode;
                 DetailRec.FirstString = frm.GetTitleString;                                 // �€–Ú–¼�Ì
                 DetailRec.SecondString = string.Empty;                                      // �HŽ–“à—e
                 DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;         // ‹¦—Í‰ïŽÐƒR�[ƒhƒ^ƒCƒv
                 DetailRec.CompanyCode = ConstructorCode;                                    // ‹¦—Í‰ïŽÐƒR�[ƒh
-                DetailRec.CompanyName = ConstructorName;                                    // ‹¦—Í‰ïŽÐ–¼�Ì
                 DetailRec.ExecutionAmount = ExecutionAmount;                                // ŽÀ�s‹àŠz
                 DetailRec.AmountConfigRate = AmountConfigRate;                              // ‹àŠz�\�¬—¦
 
@@ -1123,19 +1231,41 @@
                 DetailRec.SalaryDays = 0;                                                   // ‹‹—^�U•ª“ú�”
                 DetailRec.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;    // ’S“–’†ƒtƒ‰ƒO
 
-                // ƒf�[ƒ^’Ç‰Á
-                if (!LedgerDDB.InsertAction(DetailRec, false)) return false;
+                if (bExists && !CurDataChange)
+                {
+                    // ƒf�[ƒ^’Ç‰Á
+                    if (!LedgerDDB.UpdateAction(strSQL, DetailRec, false)) return false;
+                }
+                else
+                {
+                    DetailRec.ConstructionCode = ProcConstrCode;                                // �HŽ–”Ô�†
+                    DetailRec.GroupCount = GroupCode;                                           // ƒOƒ‹�[ƒv”Ô�†
+                    DetailRec.LineCount++;                                                      // �s”Ô�†
+                    // ƒf�[ƒ^’Ç‰Á
+                    if (!LedgerDDB.InsertAction(DetailRec, false)) return false;
+                }
 
+                CurDataChange = true;
 
                 // ’S“–ŽÒ‚Ì�ê�‡‚Ì‚Ý
                 if (GroupCode == (int)FrmConstructionLedger.DataGroup.Payroll)
                 {
+                    ArrayList ExpensesList = new ArrayList();
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName1]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio1]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode1]) });
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName2]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio2]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode2]) });
+                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName3]),
+                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio3]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode3]) });
                     // Œo”ïƒf�[ƒ^�X�V�i’S“–ŽÒ‚ª•Ï‚í‚Á‚½�ê�‡‚Í•”��•Ï‚í‚Á‚Ä‚¢‚È‚­‚Ä‚àŒvŽZ�j
                     if (!LedgerSetExpenses(LedgerDDB, ProcConstrCode, TotalOrdersPrice, ExpensesList)) return false;
                 }
 
                 // ƒf�[ƒ^•Ï�X—L
-                bChangeCode = true;
+                if (CurDataChange) bChangeCode = true;
                 
                 return true;
             }
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 20)
@@ -912,10 +912,18 @@
                 m_DspCtrl[(int)DspCnt.PurchaseOrderReturnCheckDate].Text = CommonMotions.cnvDateToUndecidedString(worklist[0].PurchaseOrderReturnCheckDate);    // ’�•¶�‘•Ô‘—Šm”F“ú
 
                 if (worklist[0].TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Pearent)
-                {
+                {   // ‘�Œ¸�e�HŽ–
                     rdbExistsFluctuation.Checked = true;                                // ‘�Œ¸�HŽ–ƒ‰ƒWƒIƒ{ƒ^ƒ“
                     btnFluctuation.Enabled = true;                                      // ‘�Œ¸�HŽ–ƒ{ƒ^ƒ“
                 }
+                else if (worklist[0].TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                {   // ‘�Œ¸Žq�HŽ–
+                    rdbExistsFluctuation.Checked = true;                                // ‘�Œ¸�HŽ–ƒ‰ƒWƒIƒ{ƒ^ƒ“
+                    label81.Visible = false;
+                    label82.Visible = false;
+                    textBoxEX4.Visible = false;
+                    textBoxEX5.Visible = false;
+                }
 
                 // �Á”ï�Åƒtƒ‰ƒO
                 //if (worklist[0].ConsumptionTaxFlg == 1)
@@ -2221,36 +2229,30 @@
         /// </summary>
         /// <param name="cbiDB"></param>
         /// <param name="work"></param>
-        private DateTime FluctuationDataPeriodEnd()
+        private void FluctuationDataPeriodEnd(ref DateTime StartDate, ref DateTime LastDate)
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             try
             {
-                DateTime LastDate = DateTime.MinValue;
+                StartDate = DateTime.Now;
+                LastDate = DateTime.Now;
 
-                string strSQL = "SELECT TYINGFLG, CONSTRUCTIONPERIODEND, CONSTRUCTIONPERIODEND2 FROM CONSTRUCTIONBASEINFO";
-                strSQL += string.Format(" WHERE (TRUNC(CONSTRUCTIONCODE / 100) = {0})", (int)(m_ConstructionCode / 100));
-                strSQL += string.Format(" AND (TYINGFLG = {0} OR TYINGFLG = {1}) ORDER BY 1"
+                string strSQL = "SELECT MIN(CONSTRUCTIONPERIODSTART), MAX(CONSTRUCTIONPERIODEND) FROM CONSTRUCTIONBASEINFO";
+                strSQL += string.Format(" WHERE (TRUNC(CONSTRUCTIONCODE / 100) = {0})", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
+                strSQL += string.Format(" AND (TYINGFLG = {0} OR TYINGFLG = {1})"
                                         , (int)CommonDefine.BaseInfoTyingFlg.Pearent, (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                strSQL += string.Format(" AND CONSTRUCTIONPERIODSTART != TO_DATE('{0}')", DateTime.MinValue.ToShortDateString());
                 ArrayList Arlist = new ArrayList();
-                if (!cbiDB.ExecuteReader(strSQL, ref Arlist)) return LastDate;
-                if (Arlist.Count == 0) return LastDate;
+                if (!cbiDB.ExecuteReader(strSQL, ref Arlist)) return;
+                if (Arlist.Count == 0) return;
+                object[] objRec = (object[])Arlist[0];
+                StartDate = CommonMotions.cnvDate(objRec[0]);
+                LastDate = CommonMotions.cnvDate(objRec[1]);
 
-                foreach (object[] objCur in Arlist)
-                {
-                    DateTime EndDate = CommonMotions.cnvDate(objCur[1]);
-                    DateTime ExtDate = CommonMotions.cnvDate(objCur[2]);
-                    // Œ_–ñ�HŠú�I—¹‚ª•Û‘¶’l‚æ‚è‘å‚«‚¢�ê�‡‚ÍŽæ“¾‚·‚é
-                    if (EndDate > LastDate) LastDate = EndDate;
-                    // Œ_–ñ�HŠú�I—¹�i‰„’·�j‚ª•Û‘¶’l‚æ‚è‘å‚«‚¢�ê�‡‚ÍŽæ“¾‚·‚é
-                    if (ExtDate > LastDate) LastDate = ExtDate;
-                }
-                return LastDate;
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return DateTime.MinValue;
             }
             finally
             {
@@ -2266,7 +2268,7 @@
         /// <param name="BaseDB"></param>
         /// <param name="LastDate"></param>
         /// <returns></returns>
-        private bool UpdateConstrEndDate(IOConstructionBaseInfo BaseDB, DateTime LastDate)
+        private bool UpdateConstrEndDate(IOConstructionBaseInfo BaseDB, DateTime StartDate, DateTime LastDate)
         {
             try
             {
@@ -2276,20 +2278,23 @@
                 if (BaseList.Count == 0) return false;
 
                 // �HŠú�I—¹�E�HŠú�I—¹�i‰„’·�j‚ªŠù‚É�Å�I“ú‚Å�X�V‚³‚ê‚Ä‚¢‚ê‚Î�ˆ—�‚µ‚È‚¢
-                if (BaseList[0].ConstructionPeriodEnd == LastDate) return true;
-                if (BaseList[0].ConstructionPeriodEnd2 == LastDate) return true;
+                if (BaseList[0].ConstructionPeriodStart2 != StartDate)
+                {
+                    // ‘�Œ¸�HŽ–‚Ì�eƒŒƒR�[ƒh‚ÌŒ_–ñ�HŠúŠJŽn�i‰„’·�j‚ð�X�V‚·‚é
+                    if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
+                                            (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODSTART2,
+                                            StartDate,
+                                            false)) return false;
+                }
+                if (BaseList[0].ConstructionPeriodEnd2 != LastDate)
+                {
+                    // ‘�Œ¸�HŽ–‚Ì�eƒŒƒR�[ƒh‚ÌŒ_–ñ�HŠú�I—¹�i‰„’·�j‚ð�X�V‚·‚é
+                    if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
+                                            (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODEND2,
+                                            LastDate,
+                                            false)) return false;
+                }
 
-                // ‘�Œ¸�HŽ–‚Ì�eƒŒƒR�[ƒh‚ÌŒ_–ñ�HŠúŠJŽn�i‰„’·�j‚ð�X�V‚·‚é
-                if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
-                                        (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODSTART2,
-                                        BaseList[0].ConstructionPeriodEnd.AddDays(1),
-                                        false)) return false;
-                // ‘�Œ¸�HŽ–‚Ì�eƒŒƒR�[ƒh‚ÌŒ_–ñ�HŠú�I—¹�i‰„’·�j‚ð�X�V‚·‚é
-                if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
-                                        (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODEND2,
-                                        LastDate,
-                                        false)) return false;
-
                 return true;
             }
             catch (System.Exception ex)
@@ -2509,6 +2514,7 @@
                 }
 
                 bool TyingDataFlag = false;
+                DateTime StConstrDate = DateTime.MinValue;
                 DateTime LastConstrDate = DateTime.MinValue;
 
                 // ‘�Œ¸�HŽ–‚Ì�e‚à‚µ‚­‚ÍŽq‚Ì”»’è
@@ -2521,7 +2527,7 @@
                 //if ((pnlFluctuation.Visible == true && rdbExistsFluctuation.Checked == true) || (pnlFluctuation.Visible == false)) LastDateUpDate = true;
 
                 // ‘�Œ¸�HŽ–‚Ì�e‚à‚µ‚­‚ÍŽq‚Ì�ê�‡‚Íˆê”Ô�ÅŒã‚Ì�HŠú�I—¹‚ðŽæ“¾‚·‚é
-                if (TyingDataFlag) LastConstrDate = FluctuationDataPeriodEnd();
+                if (TyingDataFlag) FluctuationDataPeriodEnd(ref StConstrDate, ref LastConstrDate);
 
                 // ˆêŠ‡�ˆ—�‚È‚Ì‚Å�Ú‘±‚ð�s‚¤
                 cbiDB.connect(); cbiDB.beginTran();
@@ -2560,12 +2566,13 @@
                 // ‘�Œ¸�HŽ–‚Ì�e‚à‚µ‚­‚ÍŽq‚Ì�ê�‡‚ÍŒ_–ñ�HŠú�I—¹�i‰„’·�j‚ð�X�V‚·‚é
                 if (TyingDataFlag)
                 {
-                    if (!UpdateConstrEndDate(cbiDB, LastConstrDate))
+                    if (!UpdateConstrEndDate(cbiDB, StConstrDate, LastConstrDate))
                     {
                         MessageBox.Show("�HŽ–�î•ñ‚Ì‰„’·�HŠú“o˜^ƒGƒ‰�[‚Å‚·�B", "“o˜^ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         cbiDB.rollback();
                         cbidDB.rollback();
                         cpdDB.rollback();
+                        cbLinkDB.rollback();
                         return false;
                     }
                 }
@@ -2573,13 +2580,27 @@
                 // “¯ˆê�HŽ–“à‚ÌŽó’�‹àŠz‚ð�WŒv‚·‚é
                 TotalOrdersPrice = FluctuationDataOrdersPrice(cbiDB);
 
+                // �eƒf�[ƒ^‚ð”äŠr‚Ì‚½‚ß‚ÉŽæ“¾‚·‚é
+                ArrayList ParentData = new ArrayList();
+                int ProcConstrCode = 0;
+                if (!GetFluctuationParent(cbiDB, cbLinkDB, TyingDataFlag, ref ParentData, ref ProcConstrCode))
+                {
+                    MessageBox.Show("�HŽ–�î•ñŽæ“¾ƒGƒ‰�[‚Å‚·�B", "Žæ“¾ƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    cbiDB.rollback();
+                    cbidDB.rollback();
+                    cpdDB.rollback();
+                    cbLinkDB.rollback();
+                    return false;
+                }
+
                 // �HŽ–—\ŽZ�‘ƒf�[ƒ^�X�V
-                if (!BudgetDataChange(ApprovalDB, BudgetDB, BudgetDDB, PersonDB, TotalOrdersPrice))
+                if (!BudgetDataChange(ApprovalDB, BudgetDB, BudgetDDB, PersonDB, TotalOrdersPrice, ParentData, ProcConstrCode))
                 {
                     MessageBox.Show("�HŽ–—\ŽZ�‘ƒf�[ƒ^�X�VƒGƒ‰�[‚Å‚·�B", "�X�VƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     cbiDB.rollback();
                     cbidDB.rollback();
                     cpdDB.rollback();
+                    cbLinkDB.rollback();
 
                     ApprovalDB.rollback();
                     BudgetDB.rollback();
@@ -2589,14 +2610,16 @@
                 }
 
                 bool bLedgerReCalc = false;
-                int ProcConstrCode = 0;
                 // �HŽ–�Ú�×‘ä’ ƒf�[ƒ^�X�V
-                if (!LedgerDataChange(cbiDB, LedgerDB, LedgerDDB, LedgerEDB, PersonDB, cbLinkDB, TotalOrdersPrice, TyingDataFlag, ref bLedgerReCalc, ref ProcConstrCode))
+                if (!LedgerDataChange(cbiDB, LedgerDB, LedgerDDB, LedgerEDB, PersonDB, cbLinkDB,
+                                        TotalOrdersPrice, TyingDataFlag, frm, ParentData, ProcConstrCode,
+                                        ref bLedgerReCalc, ref ProcConstrCode))
                 {
                     MessageBox.Show("�HŽ–�Ú�×‘ä’ ƒf�[ƒ^�X�VƒGƒ‰�[‚Å‚·�B", "�X�VƒGƒ‰�[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     cbiDB.rollback();
                     cbidDB.rollback();
                     cpdDB.rollback();
+                    cbLinkDB.rollback();
 
                     ApprovalDB.rollback();
                     PersonDB.rollback();
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 20)
@@ -193,6 +193,18 @@
             /// </summary>
             FluctuationFlg,
             /// <summary>
+            /// ‹‹—^�U•ª‹æ•ª
+            /// </summary>
+            SalaryFlg,
+            /// <summary>
+            /// ‹‹—^�U•ª“ú�”
+            /// </summary>
+            SalaryDays,
+            /// <summary>
+            /// ’S“–’†ƒtƒ‰ƒO
+            /// </summary>
+            OperatingFlg,
+            /// <summary>
             /// Žx•¥‹àŠz1ƒJŒŽ–Ú
             /// </summary>
             payment,
@@ -305,7 +317,7 @@
         /// </summary>
         private static Color s_CommonCalculatedValueFColor = Color.White;
         #endregion
-        
+
         #region ƒOƒŠƒbƒh�€–Ú�sƒ^ƒCƒgƒ‹
         /// <summary>
         /// ƒOƒŠƒbƒh�€–Ú�sƒ^ƒCƒgƒ‹
@@ -450,88 +462,6 @@
 
         #endregion
 
-        #region “à•”ƒNƒ‰ƒX
-        /// <summary>
-        /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõ•ÛŽ�ƒNƒ‰ƒX
-        /// </summary>
-        private class PersonSalaryData
-        {
-            /// <summary>
-            ///  ƒOƒ‹�[ƒv”Ô�†
-            /// </summary>
-            private int m_GroupCount = 0;
-            /// <summary>
-            /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõƒR�[ƒh
-            /// </summary>
-            private int m_PersonCode = 0;
-            /// <summary>
-            /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõ–¼‘O
-            /// </summary>
-            private string m_PersonName = string.Empty;
-            /// <summary>
-            /// ‹‹—^�U•ª‹æ•ª
-            /// </summary>
-            private int m_SalaryFlg = 0;
-            /// <summary>
-            /// ‹‹—^�U•ª“ú�”
-            /// </summary>
-            private int m_SalaryDays = 0;
-            /// <summary>
-            /// ’S“–’†ƒtƒ‰ƒO
-            /// </summary>
-            private int m_OperatingFlg = 0;
-
-            /// <summary>
-            ///  ƒOƒ‹�[ƒv”Ô�†
-            /// </summary>
-            public int GroupCount
-            {
-                get { return m_GroupCount; }
-                set { m_GroupCount = value; }
-            }
-            /// <summary>
-            /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõƒR�[ƒh
-            /// </summary>
-            public int PersonCode
-            {
-                get { return m_PersonCode; }
-                set { m_PersonCode = value; }
-            }
-            /// <summary>
-            /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõ–¼‘O
-            /// </summary>
-            public string PersonName
-            {
-                get { return m_PersonName; }
-                set { m_PersonName = value; }
-            }
-            /// <summary>
-            /// ‹‹—^�U•ª‹æ•ª
-            /// </summary>
-            public int SalaryFlg
-            {
-                get { return m_SalaryFlg; }
-                set { m_SalaryFlg = value; }
-            }
-            /// <summary>
-            /// ‹‹—^�U•ª“ú�”
-            /// </summary>
-            public int SalaryDays
-            {
-                get { return m_SalaryDays; }
-                set { m_SalaryDays = value; }
-            }
-            /// <summary>
-            /// ’S“–’†ƒtƒ‰ƒO
-            /// </summary>
-            public int OperatingFlg
-            {
-                get { return m_OperatingFlg; }
-                set { m_OperatingFlg = value; }
-            }
-        }
-        #endregion
-
         #region •Ï�”
         /// <summary>
         /// ƒtƒB�[ƒ‹ƒh’l•Ï‰»ƒtƒ‰ƒO
@@ -557,7 +487,7 @@
         /// ‰æ–Ê”ñ•\Ž¦ƒtƒ‰ƒO
         /// </summary>
         private bool m_NonDisplayFlag = false;
-        
+
         /// <summary>
         /// ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
         /// </summary>
@@ -610,7 +540,7 @@
         /// Cell•�ƒTƒCƒY
         /// </summary>
         //private static int[] s_CellSize = new int[] { 90, 100, 0, 0, 0, 200, 200, 0, 200, 150, 150, 150, 150, 100, 0, 0, 0 };
-        private  int[] m_CellSize;
+        private int[] m_CellSize;
         #endregion
 
         /// <summary>
@@ -644,15 +574,8 @@
 
         #endregion
 
-        #region ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõ•ÛŽ�ƒNƒ‰ƒXƒŠƒXƒg
-        /// <summary>
-        /// ’S“–ŽÒ�E•›’S“–ŽÒ�EŽw“±ˆõ•ÛŽ�ƒNƒ‰ƒXƒŠƒXƒg
-        /// </summary>
-        private List<PersonSalaryData> m_PSDList = new List<PersonSalaryData>();
         #endregion
 
-        #endregion
-
         #region ƒvƒ�ƒpƒeƒB
         /// <summary>
         /// �HŽ–”Ô�†
@@ -790,7 +713,7 @@
             {
                 // ”ñ•\Ž¦Žž‚Ì�ˆ—�‚Í‚»‚Ì‚Ü‚Ü‚·‚®‚É�I‚í‚é
                 if (!this.Visible) return;
-                
+
                 if (m_bChengeAns)
                 {
                     if (MessageBox.Show("ƒf�[ƒ^‚É•Ï�X‚ª‚ ‚è‚Ü‚·�A“o˜^‚¹‚¸‚É�I—¹‚µ‚Ä‚æ‚ë‚µ‚¢‚Å‚·‚©�H�B", "�I—¹Šm”F"
@@ -802,7 +725,7 @@
                 }
                 // ƒTƒuƒtƒH�[ƒ€‹N“®‚Íƒvƒ�ƒZƒXƒJƒEƒ“ƒ^‚ð•Ï�X‚µ‚È‚¢
                 if (m_SubForm) m_CloseingProcessOn = false;
-                
+
                 // ƒtƒH�[ƒ€‚ªClose‚³‚ê‚Ä‚¢‚È‚¯‚ê‚ÎƒNƒ��[ƒY‚·‚é
                 TerminatingProcess();
 
@@ -1012,13 +935,13 @@
                 DataGridViewCell CurCell = dgvAllDisplay.CurrentCell;
                 // ‹¦—Í‰ïŽÐ–¼‚Ì‚Ý�ˆ—�‚·‚é
                 if (CurCell.ColumnIndex != (int)GridColumn.CompanyName) return;
-                
+
                 DataGridViewRow CurRow = dgvAllDisplay.CurrentRow;
                 // ‹¤’Ê‰¼�Ý”ï�EŠO’�”ï‚Ì‚Ý�ˆ—�‚·‚é
                 int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.GroupCount].Value);
                 if (GroupNo != (int)FrmConstructionBudget.DataGroup.CommonTempCosts
                     && GroupNo != (int)FrmConstructionBudget.DataGroup.OutSourceCosts) return;
-                
+
                 // ‹¦—Í‰ïŽÐƒR�[ƒh�E–¼�Ì‚ðƒNƒŠƒA‚·‚é
                 CurRow.Cells[(int)(int)GridColumn.CompanyType].Value = 0;
                 CurRow.Cells[(int)(int)GridColumn.CompanyCode].Value = 0;
@@ -1040,8 +963,11 @@
             {
                 // �I—¹Žž‚Í�ˆ—�‚µ‚È‚¢
                 if (!this.Visible) return;
-                if (ActiveControl.Name.Equals(btnEnd.Name)) return;
-                
+                if (ActiveControl != null)
+                {
+                    if (ActiveControl.Name.Equals(btnEnd.Name)) return;
+                }
+
                 DataGridView dgv = dgvAllDisplay;
                 DataGridViewRow CurRow = dgv.CurrentRow;
 
@@ -1382,10 +1308,10 @@
         }
         #endregion
 
-        // ----------- ƒeƒXƒgƒ�ƒWƒbƒN
-        #region ƒeƒXƒgƒ�ƒWƒbƒN
+        // ----------- ƒf�[ƒ^ƒRƒ“ƒo�[ƒg
+        #region ƒf�[ƒ^ƒRƒ“ƒo�[ƒg
         /// <summary>
-        /// ƒeƒXƒgƒ�ƒWƒbƒN
+        /// ƒtƒ‰ƒOƒRƒ“ƒo�[ƒg
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
@@ -1394,6 +1320,16 @@
             // ƒtƒ‰ƒOƒRƒ“ƒo�[ƒg
             Convert1();
         }
+        /// <summary>
+        /// ’S“–�E•›’S“–�EŽw“±ˆõ�ÄŠ„‚è•t‚¯
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void button2_Click(object sender, EventArgs e)
+        {
+            RecalcalculationPersonnelExpenses();
+            //ReCalculation();
+        }
         #endregion
     }
 }
\ No newline at end of file
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 20)
@@ -95,6 +95,9 @@
             this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column19 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column20 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.btnDispDown = new System.Windows.Forms.Button();
             this.btnDispUp = new System.Windows.Forms.Button();
             this.btnOtherProc = new System.Windows.Forms.Button();
@@ -102,6 +105,7 @@
             this.btnInstractorChange = new System.Windows.Forms.Button();
             this.btnChangePrice = new System.Windows.Forms.Button();
             this.button1 = new System.Windows.Forms.Button();
+            this.button2 = new System.Windows.Forms.Button();
             this.panel1.SuspendLayout();
             this.panel2.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
@@ -638,7 +642,10 @@
             this.Column17,
             this.Column8,
             this.Column11,
-            this.Column19});
+            this.Column19,
+            this.Column20,
+            this.Column21,
+            this.Column22});
             this.dgvAllDisplay.Location = new System.Drawing.Point(6, 4);
             this.dgvAllDisplay.Name = "dgvAllDisplay";
             this.dgvAllDisplay.RowHeadersVisible = false;
@@ -858,6 +865,33 @@
             this.Column19.ReadOnly = true;
             this.Column19.Visible = false;
             // 
+            // Column20
+            // 
+            this.Column20.Frozen = true;
+            this.Column20.HeaderText = "çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†";
+            this.Column20.Name = "Column20";
+            this.Column20.ReadOnly = true;
+            this.Column20.Visible = false;
+            this.Column20.Width = 5;
+            // 
+            // Column21
+            // 
+            this.Column21.Frozen = true;
+            this.Column21.HeaderText = "çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°";
+            this.Column21.Name = "Column21";
+            this.Column21.ReadOnly = true;
+            this.Column21.Visible = false;
+            this.Column21.Width = 5;
+            // 
+            // Column22
+            // 
+            this.Column22.Frozen = true;
+            this.Column22.HeaderText = "æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°";
+            this.Column22.Name = "Column22";
+            this.Column22.ReadOnly = true;
+            this.Column22.Visible = false;
+            this.Column22.Width = 5;
+            // 
             // btnDispDown
             // 
             this.btnDispDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
@@ -950,6 +984,18 @@
             this.button1.Visible = false;
             this.button1.Click += new System.EventHandler(this.button1_Click);
             // 
+            // button2
+            // 
+            this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button2.Location = new System.Drawing.Point(1300, 581);
+            this.button2.Name = "button2";
+            this.button2.Size = new System.Drawing.Size(37, 35);
+            this.button2.TabIndex = 101;
+            this.button2.Text = "ï¼‘";
+            this.button2.UseVisualStyleBackColor = true;
+            this.button2.Visible = false;
+            this.button2.Click += new System.EventHandler(this.button2_Click);
+            // 
             // FrmConstructionLedger
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -956,6 +1002,7 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1344, 692);
+            this.Controls.Add(this.button2);
             this.Controls.Add(this.button1);
             this.Controls.Add(this.btnChangePrice);
             this.Controls.Add(this.btnInstractorChange);
@@ -1037,6 +1084,10 @@
         private System.Windows.Forms.Button btnAssistantChange;
         private System.Windows.Forms.Button btnInstractorChange;
         private System.Windows.Forms.Button btnChangePrice;
+        private System.Windows.Forms.Label lblLabel06;
+        private System.Windows.Forms.Label label23;
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.Button button2;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
@@ -1056,8 +1107,8 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column19;
-        private System.Windows.Forms.Label lblLabel06;
-        private System.Windows.Forms.Label label23;
-        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column20;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column21;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column22;
     }
 }
\ No newline at end of file
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx	(revision 20)
@@ -165,4 +165,13 @@
   <metadata name="Column19.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column20.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column21.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column22.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: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 20)
@@ -13,6 +13,7 @@
 using ProcessManagement.DataModel;
 using ProcessManagement.Common;
 using ProcessManagement.DB.IOAccess;
+using System.Diagnostics;
 
 namespace ProcessManagement.Forms.DataEntry
 {
@@ -482,18 +483,35 @@
                 }
                 else if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Pearent)
                 {
-                    // å·¥äº‹å¢—æ¸›ã�®å¤‰æ›´ã�Œã�‚ã‚‹å ´å�ˆã�¯å·¥äº‹å¢—æ¸›æƒ…å ±ã‚’ä»‹ã�—ã�¦å·¥äº‹æƒ…å ±ã�®å�—æ³¨é‡‘é¡�ã‚’é›†è¨ˆã�™ã‚‹
+                    int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("é�ž å�— æ³¨")).Key;
+
                     string strSQL = "SELECT SUM(A.ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO A";
-                    strSQL += string.Format(" WHERE A.CONSTRUCTIONSTATUSFLG != {0}", CommonDefine.ProjectsStatus.First(x => x.Value.Equals("é�ž å�— æ³¨")).Key);
-                    strSQL += " AND A.CONSTRUCTIONCODE IN (SELECT FLUCTUATIONCODE FROM CONSTRUCTIONLINK";
-                    strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0})", m_ConstructionCode);
-                    ArrayList arList = new ArrayList();
-                    if (BaseDB.ExecuteReader(strSQL, ref arList))
-                    {
-                        object[] wrkobj = (object[])arList[0];
-                        OrdersPrice = CommonMotions.cnvInt(wrkobj[0]);
-                    }
-                    OrdersPrice += (int)m_ConstructionBaseInfo.OrdersDecisionPrice;
+                    strSQL += " WHERE A.CONSTRUCTIONCODE IN";
+                    strSQL += " (SELECT B.CONSTRUCTIONCODE FROM PROCESSAPPROVAL B";
+                    strSQL += string.Format(" WHERE  TRUNC(B.CONSTRUCTIONCODE / 100) = {0}", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
+                    strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                    strSQL += " AND B.SEQNO = 1";
+                    strSQL += string.Format(" AND B.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                    strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG != {0}", iCode1);
+
+                    ArrayList DatArray = new ArrayList();
+                    BaseDB.ExecuteReader(strSQL, ref DatArray);
+                    object[] objRet = (object[])DatArray[0];
+
+                    OrdersPrice = CommonMotions.cnvInt(objRet[0]);
+
+                    //// å·¥äº‹å¢—æ¸›ã�®å¤‰æ›´ã�Œã�‚ã‚‹å ´å�ˆã�¯å·¥äº‹å¢—æ¸›æƒ…å ±ã‚’ä»‹ã�—ã�¦å·¥äº‹æƒ…å ±ã�®å�—æ³¨é‡‘é¡�ã‚’é›†è¨ˆã�™ã‚‹
+                    //string strSQL = "SELECT SUM(A.ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO A";
+                    //strSQL += string.Format(" WHERE A.CONSTRUCTIONSTATUSFLG != {0}", CommonDefine.ProjectsStatus.First(x => x.Value.Equals("é�ž å�— æ³¨")).Key);
+                    //strSQL += " AND A.CONSTRUCTIONCODE IN (SELECT FLUCTUATIONCODE FROM CONSTRUCTIONLINK";
+                    //strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0})", m_ConstructionCode);
+                    //ArrayList arList = new ArrayList();
+                    //if (BaseDB.ExecuteReader(strSQL, ref arList))
+                    //{
+                    //    object[] wrkobj = (object[])arList[0];
+                    //    OrdersPrice = CommonMotions.cnvInt(wrkobj[0]);
+                    //}
+                    //OrdersPrice += (int)m_ConstructionBaseInfo.OrdersDecisionPrice;
                 }
                 return OrdersPrice;
             }
@@ -1171,12 +1189,14 @@
         /// å�–å¾—ãƒªã‚¹ãƒˆã‚ˆã‚Šæ˜Žç´°ã�®ãƒ‡ãƒ¼ã‚¿ã‚’å�–ã‚Šè¾¼ã‚€
         /// </summary>
         /// <param name="DetailList"></param>
-        private void SetBudgetDataFromList(List<ConstructionBudgetDetail> FromData,
+        private bool SetBudgetDataFromList(List<ConstructionBudgetDetail> FromData,
                                             ref List<ConstructionBudgetDetail> DetailList,
                                             params int[] CodeArray)
         {
             try
             {
+                bool bExists = false;
+
                 // å�–å¾—ãƒªã‚¹ãƒˆåˆ†æ¤œç´¢ã�™ã‚‹
                 for (int iy = 0; iy < FromData.Count; iy++)
                 {
@@ -1186,14 +1206,17 @@
                         if (FromData[iy].GroupCount == CodeArray[ix])
                         {
                             DetailList.Add(FromData[iy]);
+                            bExists = true;
                             break;
                         }
                     }
                 }
+                return bExists;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
             }
         }
         #endregion
@@ -1307,7 +1330,7 @@
             try
             {
                 List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
-                SetBudgetDataFromList(FromData, ref DetailList,
+                bool bExists = SetBudgetDataFromList(FromData, ref DetailList,
                                                 (int)FrmConstructionBudget.DataGroup.CommonTempCosts,       // å…±é€šä»®è¨­
                                                 (int)FrmConstructionBudget.DataGroup.OutSourceCosts,        // å¤–æ³¨è²»
                                                 (int)FrmConstructionBudget.DataGroup.MyConstruction);       // è‡ªç¤¾æ–½å·¥
@@ -1453,10 +1476,18 @@
         {
             try
             {
-                // å·¥äº‹äºˆç®—æ›¸æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ã‚’èª­ã�¿è¾¼ã‚€
+                // å�–å¾—ã�—ã�Ÿå·¥äº‹äºˆç®—æ›¸æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ã‚ˆã‚Šè©²å½“ã‚°ãƒ«ãƒ¼ãƒ—ãƒ‡ãƒ¼ã‚¿ã‚’å�–ã‚Šè¾¼ã‚€
                 List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
-                SetBudgetDataFromList(FromData, ref DetailList, GroupNo);
-                ConstructionBudgetDetail DetailRec = DetailList[0];
+                bool bExists = SetBudgetDataFromList(FromData, ref DetailList, GroupNo);
+                ConstructionBudgetDetail DetailRec;
+                if (bExists)
+                {
+                    DetailRec = DetailList[0];
+                }
+                else
+                {
+                    DetailRec = new ConstructionBudgetDetail();
+                }
 
                 DataGridView dgv = dgvAllDisplay;
 
@@ -1501,12 +1532,12 @@
                             m_CostsRowCount[(int)CostsRowLine.InstructorRowLine] = dgv.RowCount;
                         GroupNo = (int)DataGroup.Instructor;
 
+                        // æŒ‡å°Žå“¡è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
+                        SetFirstStringName(GroupNo, ref DetailRec);
+
                         // å†…éƒ¨ãƒªã‚¹ãƒˆã�¸ãƒ‡ãƒ¼ã‚¿ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                        CreatePersonCosts(GroupNo, DetailRec);
+                        CreatePersonCosts(GroupNo, DetailRec, bExists, ref RowData);
                         
-                        // æŒ‡å°Žå“¡è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
-                        SetFirstStringName(ref DetailRec);
-
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯æŒ‡å°Žå“¡ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
@@ -1517,12 +1548,12 @@
                             m_CostsRowCount[(int)CostsRowLine.AssistantRowLine] = dgv.RowCount;
                         GroupNo = (int)DataGroup.Assistant;
 
+                        // å‰¯æ‹…å½“è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
+                        SetFirstStringName(GroupNo, ref DetailRec);
+
                         // å†…éƒ¨ãƒªã‚¹ãƒˆã�¸ãƒ‡ãƒ¼ã‚¿ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                        CreatePersonCosts(GroupNo, DetailRec);
+                        CreatePersonCosts(GroupNo, DetailRec, bExists, ref RowData);
 
-                        // å‰¯æ‹…å½“è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
-                        SetFirstStringName(ref DetailRec);
-                    
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯å‰¯æ‹…å½“è€…ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
@@ -1533,8 +1564,11 @@
                             m_CostsRowCount[(int)CostsRowLine.PayrollRowLine] = dgv.RowCount;
                         GroupNo = (int)DataGroup.Payroll;
 
+                        // æ‹…å½“è€…è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
+                        SetFirstStringName(GroupNo, ref DetailRec);
+
                         // å†…éƒ¨ãƒªã‚¹ãƒˆã�¸ãƒ‡ãƒ¼ã‚¿ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                        CreatePersonCosts(GroupNo, DetailRec);
+                        CreatePersonCosts(GroupNo, DetailRec, bExists, ref RowData);
 
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯æ‹…å½“è€…ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
@@ -1606,30 +1640,51 @@
         }
         #endregion
 
-        #region å·¥äº‹äºˆç®—æ›¸ã‚ˆã‚ŠæŒ‡å°Žå“¡çµ¦ä¸Žè¡Œä½œæˆ�
+        #region å·¥äº‹äºˆç®—æ›¸ã‚ˆã‚Šäººä»¶è²»çµ¦ä¸Žè¡Œä½œæˆ�
         /// <summary>
-        /// å·¥äº‹äºˆç®—æ›¸ã‚ˆã‚ŠæŒ‡å°Žå“¡çµ¦ä¸Žè¡¨ç¤º
+        /// å·¥äº‹äºˆç®—æ›¸ã‚ˆã‚Šäººä»¶è²»çµ¦ä¸Žè¡¨ç¤º
         /// </summary>
         /// <returns></returns>
-        private void CreatePersonCosts(int GroupNo, ConstructionBudgetDetail DetailRec)
+        private void CreatePersonCosts(int GroupNo, ConstructionBudgetDetail DetailRec, bool bExists, ref object[] RowData)
         {
             IOConstructionBudget BudgetDB = new IOConstructionBudget();
             try
             {
-                string strSQL = BudgetDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionBudget BudgetRec = new ConstructionBudget();
-                BudgetDB.SelectAction(strSQL, ref BudgetRec);
+                // äººå“¡ã�Œè¨­å®šã�•ã‚Œã�¦ã�„ã�ªã�‘ã‚Œã�°å‡¦ç�†ã�—ã�ªã�„
+                if (DetailRec.CompanyCode == 0) return;
 
-                // å†…éƒ¨ãƒªã‚¹ãƒˆã‚»ãƒƒãƒˆ
-                PersonSalaryData CurPerson = new PersonSalaryData();
-                CurPerson.GroupCount = GroupNo;                                             // ã‚°ãƒ«ãƒ¼ãƒ—ç•ªå�·
-                CurPerson.PersonCode = DetailRec.CompanyCode;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡ã‚³ãƒ¼ãƒ‰
-                CurPerson.PersonName = DetailRec.CompanyName;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡å��å‰�
-                CurPerson.SalaryFlg = BudgetRec.SalaryFlg;                                  // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
-                CurPerson.SalaryDays = BudgetRec.SalaryDays;                                // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
-                CurPerson.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;    // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
+                DataGridView dgv = dgvAllDisplay;
 
-                m_PSDList.Add(CurPerson);
+                // ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚‹å ´å�ˆã�¯ãƒ‡ãƒ¼ã‚¿ã‚ˆã‚Šã‚»ãƒƒãƒˆã�™ã‚‹
+                if (bExists)
+                {
+                    string strSQL = BudgetDB.CreatePrimarykeyString(m_ConstructionCode);
+                    ConstructionBudget BudgetRec = new ConstructionBudget();
+                    BudgetDB.SelectAction(strSQL, ref BudgetRec);
+
+                    switch (GroupNo)
+                    {
+                        case (int)DataGroup.Payroll:                                                    // æ‹…å½“è€…
+                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.SalaryFlg;                   // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.SalaryDays;                 // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                            break;
+                        case (int)DataGroup.Assistant:                                                  // å‰¯æ‹…å½“è€…
+                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.A_SalaryFlg;                 // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.A_SalaryDays;               // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                            break;
+                        case (int)DataGroup.Instructor:                                                 // æŒ‡å°Žå“¡
+                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.I_SalaryFlg;                 // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.I_SalaryDays;               // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                            break;
+                    }
+                }
+                else
+                {   // ç„¡ã�„å ´å�ˆã�¯æŒ¯åˆ†ç„¡ã�«ã�™ã‚‹
+                    RowData[(int)GridColumn.SalaryFlg] = (int)CommonDefine.SalaryDevision.Noting;               // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                    RowData[(int)GridColumn.SalaryDays] = 0;                                                    // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                }
+                
+                RowData[(int)GridColumn.OperatingFlg] = (int)CommonDefine.SalaryOperateKind.Oparateing;         // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
             }
             catch (Exception ex)
             {
@@ -2101,9 +2156,21 @@
                 int TotalValue = 0;
                 foreach (ConstructionLedgerExcute ExcRec in ExcList)
                 {
-                    int i = ExcRec.ColumnCount;
-                    RowData[i] = ExcRec.PaymentAmount.ToString("#,0");
-                    TotalValue += (int)ExcRec.PaymentAmount;
+                    //ã‚°ãƒªãƒƒãƒ‰ã�®å¯¾è±¡åˆ—ã‚’å�–å¾—ã�™ã‚‹ï¼ˆãƒ‡ãƒ¼ã‚¿ã�®ã‚«ãƒ©ãƒ æ•°ã�‹ã‚‰å¹´æœˆã�«å¤‰æ›´ã�™ã‚‹ï¼‰
+                    string CurMounth = string.Format("{0}å¹´{1}æœˆ", ExcRec.TargetMonth.Year, ExcRec.TargetMonth.Month);
+                    for (int ix = (int)GridColumn.payment; ix < dgv.ColumnCount; ix++)
+                    {
+                        // ã‚°ãƒªãƒƒãƒ‰ã�®å¯¾è±¡åˆ—ã‚’æŽ¢ã�™
+                        if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                        // ã�‚ã‚Œã�°ã‚»ãƒƒãƒˆã�™ã‚‹
+                        RowData[ix] = ExcRec.PaymentAmount.ToString("#,0");
+                        TotalValue += (int)ExcRec.PaymentAmount;
+                        break;
+                    }
+                    //int i = ExcRec.ColumnCount;
+                    //RowData[i] = ExcRec.PaymentAmount.ToString("#,0");
+                    //TotalValue += (int)ExcRec.PaymentAmount;
                 }
 
                 // å�ˆè¨ˆæ¬„ä½�ç½®å�–å¾—
@@ -2374,13 +2441,12 @@
                         for (int ix = (int)GridColumn.payment; ix < dgv.ColumnCount; ix++)
                         {
                             // ã‚°ãƒªãƒƒãƒ‰ã�®å¯¾è±¡åˆ—ã‚’æŽ¢ã�™
-                            if (CurMounth.Equals(dgv.Columns[ix].HeaderText))
-                            {
-                                // ã�‚ã‚Œã�°ã‚»ãƒƒãƒˆã�™ã‚‹
-                                RowData[ix] = ExcuteRec.PaymentAmount.ToString("#,0");
-                                TotalValue += ExcuteRec.PaymentAmount;
-                                break;
-                            }
+                            if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                            // ã�‚ã‚Œã�°ã‚»ãƒƒãƒˆã�™ã‚‹
+                            RowData[ix] = ExcuteRec.PaymentAmount.ToString("#,0");
+                            TotalValue += ExcuteRec.PaymentAmount;
+                            break;
                         }
                     }
 
@@ -2617,46 +2683,49 @@
                 string strPerson = PersonDB.CreatePrimarykeyString(DetailRec.CompanyCode);
                 if (!PersonDB.SelectAction(strPerson, ref PersonRec)) return false;
 
-                double Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;                                        // æœˆé¡�çµ¦ä¸Žè¨ˆç®—
+                double Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;                                      // æœˆé¡�çµ¦ä¸Žè¨ˆç®—
                 double daylySalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);                          // æ—¥å½“è¨ˆç®—
-                string ItemText = s_GroupTitle[DetailRec.GroupCount] + string.Format("ã€�{0}æ°�ã€‘", PersonRec.SealPrintName);    // é …ç›®å��ç§°ã‚»ãƒƒãƒˆ
+                string ItemText = s_GroupTitle[DetailRec.GroupCount];
                 string Content = string.Empty;
                 double BetweenTimes = 0;
                 int CostsValue = 0;
 
-                // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
-                switch (DetailRec.SalaryFlg)
+                if (DetailRec.CompanyCode != 0)
                 {
-                    case (int)CommonDefine.SalaryDevision.All:
-                        // ----- å…¨æ—¥æŒ¯åˆ†
-                        // å·¥æœŸå�–å¾—
-                        BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
-                        // ç�€å·¥æ—¥
-                        DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
-                        // å®Œäº†æ—¥
-                        DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
+                    ItemText = ItemText + string.Format("ã€�{0}æ°�ã€‘", PersonRec.SealPrintName);     // é …ç›®å��ç§°ã‚»ãƒƒãƒˆ
+                    // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
+                    switch (DetailRec.SalaryFlg)
+                    {
+                        case (int)CommonDefine.SalaryDevision.All:
+                            // ----- å…¨æ—¥æŒ¯åˆ†
+                            // å·¥æœŸå�–å¾—
+                            BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
+                            // ç�€å·¥æ—¥
+                            DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
+                            // å®Œäº†æ—¥
+                            DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
 
-                        // ç¨¼åƒ�æ—¥å�–å¾—
-                        //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
-                        int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                            // ç¨¼åƒ�æ—¥å�–å¾—
+                            //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
+                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
 
-                        // çµ¦ä¸Žè¨ˆç®—
-                        CostsValue = CommonMotions.cnvRound(daylySalary * WorkingDay);
-                        Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
-                        
-                        break;
-                    case (int)CommonDefine.SalaryDevision.Noting:
-                        // ----- æŒ‡å®šç„¡ã�—
+                            // çµ¦ä¸Žè¨ˆç®—
+                            CostsValue = CommonMotions.cnvRound(daylySalary * WorkingDay);
+                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
 
-                        break;
-                    case (int)CommonDefine.SalaryDevision.DaysInput:
-                        // ----- æ—¥æ•°æŒ‡å®š
-                        CostsValue = CommonMotions.cnvRound(daylySalary * DetailRec.SalaryDays);
-                        Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), daylySalary.ToString("#,0"));
+                            break;
+                        case (int)CommonDefine.SalaryDevision.Noting:
+                            // ----- æŒ‡å®šç„¡ã�—
 
-                        break;
+                            break;
+                        case (int)CommonDefine.SalaryDevision.DaysInput:
+                            // ----- æ—¥æ•°æŒ‡å®š
+                            CostsValue = CommonMotions.cnvRound(daylySalary * DetailRec.SalaryDays);
+                            Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), daylySalary.ToString("#,0"));
+
+                            break;
+                    }
                 }
-
                 // æ‹…å½“å��è¡¨ç¤º
                 RowData[(int)GridColumn.ItemName] = ItemText;
                 // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ä»¥å¤–ã�¯èª¬æ˜Žæ–‡ã‚’è¡¨ç¤º
@@ -2669,17 +2738,11 @@
                 // ãƒ‘ãƒ¼ã‚»ãƒ³ãƒˆã‚’è¡¨ç¤ºã�™ã‚‹
                 RowData[(int)GridColumn.Percent] = CalculattionPercent(CostsValue).ToString("0.00");
 
-                // å†…éƒ¨ãƒªã‚¹ãƒˆã‚»ãƒƒãƒˆ
-                PersonSalaryData CurPerson = new PersonSalaryData();
-                CurPerson.GroupCount = (int)DataGroup.Payroll;                              // ã‚°ãƒ«ãƒ¼ãƒ—ç•ªå�·
-                CurPerson.PersonCode = DetailRec.CompanyCode;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡ã‚³ãƒ¼ãƒ‰
-                CurPerson.PersonName = DetailRec.CompanyName;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡å��å‰�
-                CurPerson.SalaryFlg = DetailRec.SalaryFlg;                                  // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
-                CurPerson.SalaryDays = DetailRec.SalaryDays;                                // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
-                CurPerson.OperatingFlg = DetailRec.OperatingFlg;                            // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
+                // äººä»¶è²»æƒ…å ±
+                RowData[(int)GridColumn.SalaryFlg] = DetailRec.SalaryFlg;                   // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                RowData[(int)GridColumn.SalaryDays] = DetailRec.SalaryDays;                 // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                RowData[(int)GridColumn.OperatingFlg] = DetailRec.OperatingFlg;             // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
 
-                m_PSDList.Add(CurPerson);
-
                 return true;
             }
             catch (System.Exception ex)
@@ -2715,7 +2778,8 @@
                 // æ‹…å½“è€…ãƒžã‚¹ã‚¿ã‚ˆã‚Šæ‹…å½“è€…å��ã‚’å�–å¾—ã�™ã‚‹
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 string strPerson = PersonDB.CreatePrimarykeyString(DetailRec.CompanyCode);
-                if (!PersonDB.SelectAction(strPerson, ref PersonRec)) return false;
+                //if (!PersonDB.SelectAction(strPerson, ref PersonRec)) return false;
+                PersonDB.SelectAction(strPerson, ref PersonRec);
 
                 double Salary = 0;
                 // æœˆé¡�çµ¦ä¸Žè¨ˆç®—
@@ -2725,45 +2789,49 @@
                     Salary = CommonDefine.AssistantMonthryCost;
                 // æ—¥é¡�çµ¦ä¸Žå�–å¾—
                 double DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
-                string ItemText = s_GroupTitle[DetailRec.GroupCount] + string.Format("ã€�{0}æ°�ã€‘", PersonRec.SealPrintName);    // é …ç›®å��ç§°ã‚»ãƒƒãƒˆ
+                string ItemText = s_GroupTitle[DetailRec.GroupCount];
                 string Content = string.Empty;
                 double BetweenTimes = 0;
                 int CostsValue = 0;
 
-                // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
-                switch (DetailRec.SalaryFlg)
+                if (DetailRec.CompanyCode != 0)
                 {
-                    case (int)CommonDefine.SalaryDevision.All:
-                        // ----- å…¨æ—¥æŒ¯åˆ†
-                        // å·¥æœŸå�–å¾—
-                        BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
+                    ItemText = ItemText + string.Format("ã€�{0}æ°�ã€‘", PersonRec.SealPrintName);    // é …ç›®å��ç§°ã‚»ãƒƒãƒˆ
+                    // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
+                    switch (DetailRec.SalaryFlg)
+                    {
+                        case (int)CommonDefine.SalaryDevision.All:
+                            // ----- å…¨æ—¥æŒ¯åˆ†
+                            // å·¥æœŸå�–å¾—
+                            BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
 
-                        // ç�€å·¥æ—¥
-                        DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
-                        // å®Œäº†æ—¥
-                        DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
+                            // ç�€å·¥æ—¥
+                            DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
+                            // å®Œäº†æ—¥
+                            DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
 
-                        // ç¨¼åƒ�æ—¥å�–å¾—
-                        //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
-                        int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                            // ç¨¼åƒ�æ—¥å�–å¾—
+                            //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
+                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
 
-                        // çµ¦ä¸Žè¨ˆç®—
-                        CostsValue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
+                            // çµ¦ä¸Žè¨ˆç®—
+                            CostsValue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
 
-                        Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
-                
-                        break;
-                    case (int)CommonDefine.SalaryDevision.Noting:
-                        // ----- æŒ‡å®šç„¡ã�—
+                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
 
-                        break;
-                    case (int)CommonDefine.SalaryDevision.DaysInput:
-                        // ----- æ—¥æ•°æŒ‡å®š
-                        // çµ¦ä¸Žè¨ˆç®—
-                        CostsValue = CommonMotions.cnvRound(DaysSalary * DetailRec.SalaryDays);
+                            break;
+                        case (int)CommonDefine.SalaryDevision.Noting:
+                            // ----- æŒ‡å®šç„¡ã�—
 
-                        Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), DaysSalary.ToString("#,0"));
-                        break;
+                            break;
+                        case (int)CommonDefine.SalaryDevision.DaysInput:
+                            // ----- æ—¥æ•°æŒ‡å®š
+                            // çµ¦ä¸Žè¨ˆç®—
+                            CostsValue = CommonMotions.cnvRound(DaysSalary * DetailRec.SalaryDays);
+
+                            Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), DaysSalary.ToString("#,0"));
+                            break;
+                    }
                 }
 
                 // æ‹…å½“å��è¡¨ç¤º
@@ -2778,17 +2846,11 @@
                 // ãƒ‘ãƒ¼ã‚»ãƒ³ãƒˆã‚’è¡¨ç¤ºã�™ã‚‹
                 RowData[(int)GridColumn.Percent] = CalculattionPercent(CostsValue).ToString("0.00");
 
-                // å†…éƒ¨ãƒªã‚¹ãƒˆã‚»ãƒƒãƒˆ
-                PersonSalaryData CurPerson = new PersonSalaryData();
-                CurPerson.GroupCount = Group;                                               // ã‚°ãƒ«ãƒ¼ãƒ—ç•ªå�·
-                CurPerson.PersonCode = DetailRec.CompanyCode;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡ã‚³ãƒ¼ãƒ‰
-                CurPerson.PersonName = DetailRec.CompanyName;                               // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡å��å‰�
-                CurPerson.SalaryFlg = DetailRec.SalaryFlg;                                  // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
-                CurPerson.SalaryDays = DetailRec.SalaryDays;                                // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
-                CurPerson.OperatingFlg = DetailRec.OperatingFlg;                            // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
+                // äººä»¶è²»æƒ…å ±
+                RowData[(int)GridColumn.SalaryFlg] = DetailRec.SalaryFlg;                   // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                RowData[(int)GridColumn.SalaryDays] = DetailRec.SalaryDays;                 // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                RowData[(int)GridColumn.OperatingFlg] = DetailRec.OperatingFlg;             // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
 
-                m_PSDList.Add(CurPerson);
-
                 return true;
             }
             catch (System.Exception ex)
@@ -3624,7 +3686,7 @@
         /// </summary>
         /// <param name="Terget"></param>
         /// <returns></returns>
-        private int GetExpenss(string Terget)
+        private int GetExpenss(string Terget,int ExpensesCode)
         {
             try
             {
@@ -3631,9 +3693,10 @@
                 int LineRet = 0;
 
                 DataGridView dgv = dgvAllDisplay;
-                for (int i = 0; i < m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine]; i++)
+                for (int i = 0; i < m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine]; i++)
                 {
-                    if (CommonMotions.cnvString(dgv.Rows[i].Cells[(int)GridColumn.ItemName].Value).IndexOf(Terget) >= 0)
+                    if (CommonMotions.cnvString(dgv.Rows[i].Cells[(int)GridColumn.ItemName].Value).IndexOf(Terget) >= 0 ||
+                        CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.ComponentCode].Value) == ExpensesCode)
                     {
                         LineRet = i;
                         break;
@@ -3695,9 +3758,9 @@
                 // ç¨ŽæŠœå�—æ³¨æ±ºå®šé‡‘é¡�
                 string strwork = m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text;
                 work.OrdersDecisionPrice = CommonMotions.cnvDouble(strwork);
-                int Rowcnt1 = GetExpenss("ä¼šç¤¾");
-                int Rowcnt2 = GetExpenss("éƒ¨ç½²");
-                int Rowcnt3 = GetExpenss("å–¶æ¥­");
+                int Rowcnt1 = GetExpenss("ä¼šç¤¾", 3);
+                int Rowcnt2 = GetExpenss("éƒ¨ç½²", 2);
+                int Rowcnt3 = GetExpenss("å–¶æ¥­", 1);
                 for (int i = (int)GridColumn.payment; i < TotalPoint; i++)
                 {
                     // ä¼šç¤¾çµŒè²»å�ˆè¨ˆ
@@ -3920,8 +3983,8 @@
 
                     // é‡‘é¡�æ§‹æˆ�çŽ‡
                     work.AmountConfigRate = CommonMotions.cnvDouble(wrkRow.Cells[(int)GridColumn.Percent].Value);
-                    // æ”¯æ‰•è£œå¡«é¡�
-                    work.PaymentBurden = CommonMotions.cnvDouble(wrkRow.Cells[PaymentBurdenCol].Value);
+                    // æ”¯æ‰•è£œå¡«é¡�ï¼ˆçµŒè²»ã�¯æ”¯æ‰•è£œå¡«é¡�ã‚’æ›¸ã��è¾¼ã�¾ã�ªã�„ï¼‰
+                    if (work.GroupCount != (int)DataGroup.Expenses) work.PaymentBurden = CommonMotions.cnvDouble(wrkRow.Cells[PaymentBurdenCol].Value);
                     // å›ºå®šãƒ•ãƒ©ã‚°
                     if (CommonMotions.cnvString(wrkRow.Cells[(int)GridColumn.FixFlg].Value).Equals("*")) work.FixDataFlg = 1;
                     // ç‹¬ç«‹ãƒ‡ãƒ¼ã‚¿ãƒ•ãƒ©ã‚°
@@ -3935,7 +3998,7 @@
                         case (int)DataGroup.Instructor:     // 9:æŒ‡å°Žå“¡çµ¦æ–™è¡Œ
                         case (int)DataGroup.Assistant:      // 10:å‰¯æ‹…å½“è€…çµ¦æ–™è¡Œ
                         case (int)DataGroup.Payroll:        // 11:æ‹…å½“è€…çµ¦æ–™è¡Œ
-                            SetPaymentData(ref work);
+                            SetPaymentData(wrkRow, ref work);
                             break;
                         default:
                             break;
@@ -3959,28 +4022,17 @@
         }
         #endregion
 
-        #region å·¥äº‹æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡è¡Œãƒ» å‰¯æ‹…å½“è€…è¡Œã�®è¿½åŠ ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+        #region å·¥äº‹æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡è¡Œãƒ» å‰¯æ‹…å½“è€…è¡Œã�®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
         /// <summary>
-        /// å·¥äº‹æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡è¡Œãƒ» å‰¯æ‹…å½“è€…è¡Œã�®è¿½åŠ ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+        /// å·¥äº‹æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡è¡Œãƒ» å‰¯æ‹…å½“è€…è¡Œã�®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
         /// </summary>
-        private void SetPaymentData(ref ConstructionLedgerDetail DataRec)
+        private void SetPaymentData(DataGridViewRow wrkRow, ref ConstructionLedgerDetail DataRec)
         {
             try
             {
-                foreach (PersonSalaryData CurPerson in m_PSDList)
-                {
-                    // æ‹…å½“è€…ã‚’æŽ¢ã�™
-                    if (DataRec.CompanyCode != CurPerson.PersonCode) continue;
-
-                    DataRec.CompanyCode = CurPerson.PersonCode;                             // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡ã‚³ãƒ¼ãƒ‰
-                    DataRec.CompanyName = CurPerson.PersonName;                             // æ‹…å½“è€…ãƒ»å‰¯æ‹…å½“è€…ãƒ»æŒ‡å°Žå“¡å��å‰�
-                    DataRec.SalaryFlg = CurPerson.SalaryFlg;                                // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
-                    DataRec.SalaryDays = CurPerson.SalaryDays;                              // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
-                    DataRec.OperatingFlg = CurPerson.OperatingFlg;                          // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
-
-                    break;
-                }
-
+                DataRec.SalaryFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.SalaryFlg].Value);        // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                DataRec.SalaryDays = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.SalaryDays].Value);      // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+                DataRec.OperatingFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.OperatingFlg].Value);  // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
             }
             catch (System.Exception ex)
             {
@@ -4707,20 +4759,38 @@
         }
         #endregion
 
-        #region å‰¯æ‹…å½“è€…ï¼�æŒ‡å°Žå“¡ã�«å��å‰�ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        #region æ‹…å½“è€…ï¼�å‰¯æ‹…å½“è€…ï¼�æŒ‡å°Žå“¡ã�«å��å‰�ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
         /// <summary>
-        /// å‰¯æ‹…å½“è€…ï¼�æŒ‡å°Žå“¡ã�«å��å‰�ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// æ‹…å½“è€…ï¼�å‰¯æ‹…å½“è€…ï¼�æŒ‡å°Žå“¡ã�«å��å‰�ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
         /// </summary>
         /// <param name="DetailRec"></param>
-        private void SetFirstStringName(ref ConstructionBudgetDetail DetailRec)
+        private void SetFirstStringName(int GroupNo,ref ConstructionBudgetDetail DetailRec)
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
+                // ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆæ–‡å­—ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+                DetailRec.FirstString = s_GroupTitle[GroupNo];
+                if (DetailRec.CompanyCode == 0)
+                {
+                    switch (GroupNo)
+                    {
+                        case (int)DataGroup.Instructor:
+                            DetailRec.CompanyCode = m_ConstructionBaseInfo.ConstructionInstructor;
+                            break;
+                        case (int)DataGroup.Assistant:
+                            DetailRec.CompanyCode = m_ConstructionBaseInfo.ConstrSubPersonCode;
+                            break;
+                        case (int)DataGroup.Payroll:
+                            DetailRec.CompanyCode = m_ConstructionBaseInfo.ConstructionPersonCode;
+                            break;
+                    }
+                }
+
                 // è¨­å®šç„¡ã�¯å‡¦ç�†ã�—ã�ªã�„
                 if (DetailRec.CompanyCode == 0) return;
                 // å��å‰�ã�Œã�‚ã‚Œã�°å‡¦ç�†ã�—ã�ªã�„
-                if (DetailRec.FirstString.IndexOf("ã€�") > -1) return;
+                //if (DetailRec.FirstString.IndexOf("ã€�") > -1) return;
 
                 // æ‹…å½“è€…ãƒžã‚¹ã‚¿å�–å¾—
                 string strSQL = PersonDB.CreatePrimarykeyString(DetailRec.CompanyCode);
@@ -4727,7 +4797,7 @@
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 if (!PersonDB.SelectAction(strSQL, ref PersonRec)) return;
 
-                DetailRec.FirstString = string.Format("{0}ã€�{1}æ°�ã€‘", DetailRec.FirstString, PersonRec.SealPrintName);
+                DetailRec.FirstString = string.Format("{0}ã€�{1}æ°�ã€‘", s_GroupTitle[GroupNo], PersonRec.SealPrintName);
             }
             catch (Exception ex)
             {
@@ -5840,7 +5910,7 @@
                         GroupNo = (int)DataGroup.Instructor;
 
                         // æŒ‡å°Žå“¡è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
-                        SetFirstStringName(ref DetailRec);
+                        SetFirstStringName(GroupNo, ref DetailRec);
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯æŒ‡å°Žå“¡ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
@@ -5851,7 +5921,7 @@
                         GroupNo = (int)DataGroup.Assistant;
 
                         // å‰¯æ‹…å½“è¡Œã�«å��å‰�ã‚’å…¥ã‚Œã‚‹
-                        SetFirstStringName(ref DetailRec);
+                        SetFirstStringName(GroupNo, ref DetailRec);
                         // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�¯å‰¯æ‹…å½“è€…ã�®çµ¦ä¸Žã‚’è¦‹ã�ˆã�ªã�„ã‚ˆã�†ã�«ã�™ã‚‹
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
@@ -6124,6 +6194,513 @@
             }
         }
         #endregion
+
+        #region äººä»¶è²»å†�è¨ˆç®—
+        /// <summary>
+        /// äººä»¶è²»å†�è¨ˆç®—
+        /// </summary>
+        private void RecalcalculationPersonnelExpenses()
+        {
+            IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            IOConstructionLedgerDetail LDetailDB = new IOConstructionLedgerDetail();
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            FrmConstructionLedger frm = new FrmConstructionLedger();
+            try
+            {
+                // ------ é€šå¸¸åˆ†
+                string strSQL = "SELECT A.CONSTRUCTIONCODE";
+                strSQL += " , B.CreatorCode B1";
+                strSQL += " , B.SalaryFlg B2";
+                strSQL += " , B.SalaryDays B3";
+                strSQL += " , B.AssistantCode B4";
+                strSQL += " , B.A_SalaryFlg B5";
+                strSQL += " , B.A_SalaryDays B6";
+                strSQL += " , B.InstructorCode B7";
+                strSQL += " , B.I_SalaryFlg B8";
+                strSQL += " , B.I_SalaryDays B9";
+                strSQL += " , C.CONSTRUCTIONPERSONCODE C10";
+                strSQL += " , C.CONSTRSUBPERSONCODE C11";
+                strSQL += " , C.CONSTRUCTIONINSTRUCTOR C12";
+                strSQL += " , C.CONSTRUCTIONPERIODSTART C13";
+                strSQL += " , C.CONSTRUCTIONPERIODSTART2 C14";
+                strSQL += " , C.CONSTRUCTIONPERIODEND C15";
+                strSQL += " , C.CONSTRUCTIONPERIODEND2 C16";
+                strSQL += " , C.CONSTRUCTIONPERIOD C17";
+                strSQL += " , count(*)";
+                strSQL += " FROM CONSTRUCTIONLEDGER A LEFT JOIN CONSTRUCTIONBUDGET B ON A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += " , CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.CreatorCode, B.AssistantCode, B.InstructorCode, B.SalaryFlg, ";
+                strSQL += " B.SalaryDays, B.A_SalaryFlg, B.A_SalaryDays, B.I_SalaryFlg, B.I_SalaryDays, ";
+                strSQL += " C.CONSTRUCTIONPERSONCODE, C.CONSTRSUBPERSONCODE, C.CONSTRUCTIONINSTRUCTOR, C.CONSTRUCTIONPERIOD, C.CONSTRUCTIONPERIODSTART, ";
+                strSQL += " C.CONSTRUCTIONPERIODSTART2, C.CONSTRUCTIONPERIODEND, C.CONSTRUCTIONPERIODEND2";
+                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+
+                ArrayList DatList = new ArrayList();
+                if (!LedgerDB.ExecuteReader(strSQL, ref DatList)) return;
+
+                LDetailDB.connect(); LDetailDB.beginTran();
+                PersonDB.connect(); PersonDB.beginTran();
+                foreach (object[] objArry in DatList)
+                {
+                    ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
+                    SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1);
+                    if (!LDetailDB.InsertAction(DetailRec1))
+                    {
+                        LDetailDB.rollback();
+                        PersonDB.rollback();
+                        break;
+                    }
+
+                    ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
+                    SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2);
+                    if(!LDetailDB.InsertAction(DetailRec2))
+                    {
+                        LDetailDB.rollback();
+                        PersonDB.rollback();
+                        break;
+                    }
+
+                    ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
+                    SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3);
+                    if(!LDetailDB.InsertAction(DetailRec3))
+                    {
+                        LDetailDB.rollback();
+                        PersonDB.rollback();
+                        break;
+                    }
+
+                    // å·¥äº‹ã‚³ãƒ¼ãƒ‰ã�®ã‚»ãƒƒãƒˆ
+                    frm.ConstructionCode = CommonMotions.cnvInt(objArry[0]);
+
+                    // è¦‹ã�ˆã�ªã�„ç”»é�¢ã‚’å‡ºã�™
+                    frm.Hide();
+
+                    // å†�è¨ˆç®—å‡¦ç�†
+                    if (!frm.RecalculateLedger) break;
+                }
+
+                // ------ å·¥äº‹å¢—æ¸›åˆ†
+                strSQL = "SELECT A.CONSTRUCTIONCODE";
+                strSQL += " , B.CreatorCode B1";
+                strSQL += " , B.SalaryFlg B2";
+                strSQL += " , B.SalaryDays B3";
+                strSQL += " , B.AssistantCode B4";
+                strSQL += " , B.A_SalaryFlg B5";
+                strSQL += " , B.A_SalaryDays B6";
+                strSQL += " , B.InstructorCode B7";
+                strSQL += " , B.I_SalaryFlg B8";
+                strSQL += " , B.I_SalaryDays B9";
+                strSQL += " , A.CONSTRUCTIONPERSONCODE C10";
+                strSQL += " , A.CONSTRSUBPERSONCODE C11";
+                strSQL += " , A.CONSTRUCTIONINSTRUCTOR C12";
+                strSQL += " , A.CONSTRUCTIONPERIODSTART C13";
+                strSQL += " , A.CONSTRUCTIONPERIODSTART2 C14";
+                strSQL += " , A.CONSTRUCTIONPERIODEND C15";
+                strSQL += " , A.CONSTRUCTIONPERIODEND2 C16";
+                strSQL += " , A.CONSTRUCTIONPERIOD C17";
+                strSQL += " , C.CONSTRUCTIONCODE C18";
+                strSQL += " , D.COMPANYCODE D19";
+                strSQL += " , E.COMPANYCODE E20";
+                strSQL += " , F.COMPANYCODE F21";
+                strSQL += " , count(*)";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBUDGET B, CONSTRUCTIONLINK C";
+                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL D ON C.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE AND D.GROUPCOUNT = 11";
+                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL E ON C.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE AND E.GROUPCOUNT = 10";
+                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL F ON C.CONSTRUCTIONCODE = F.CONSTRUCTIONCODE AND F.GROUPCOUNT = 9";
+                strSQL += " WHERE A.TYINGFLG = 2";
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " AND C.FLUCTUATIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " group by A.CONSTRUCTIONCODE, B.CreatorCode, B.SalaryFlg, B.SalaryDays, B.AssistantCode, ";
+                strSQL += " B.A_SalaryFlg, B.A_SalaryDays, B.InstructorCode, B.I_SalaryFlg, B.I_SalaryDays, ";
+                strSQL += " A.CONSTRUCTIONPERSONCODE, A.CONSTRSUBPERSONCODE, A.CONSTRUCTIONINSTRUCTOR, A.CONSTRUCTIONPERIODSTART, A.CONSTRUCTIONPERIODSTART2, ";
+                strSQL += " A.CONSTRUCTIONPERIODEND, A.CONSTRUCTIONPERIODEND2, A.CONSTRUCTIONPERIOD, C.CONSTRUCTIONCODE, D.COMPANYCODE, E.COMPANYCODE, F.COMPANYCODE";
+                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+
+                ArrayList DatList2 = new ArrayList();
+                if (!LedgerDB.ExecuteReader(strSQL, ref DatList2)) return;
+
+                bool recalc = false;
+                foreach (object[] objArry in DatList2)
+                {
+                    recalc = false;
+                    if (CommonMotions.cnvInt(objArry[1]) != CommonMotions.cnvInt(objArry[19]))
+                    {
+                        ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
+                        SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1, false);
+                        if (!LDetailDB.InsertAction(DetailRec1))
+                        {
+                            LDetailDB.rollback();
+                            PersonDB.rollback();
+                            break;
+                        }
+                        recalc = true;
+                    }
+
+                    if (CommonMotions.cnvInt(objArry[4]) != CommonMotions.cnvInt(objArry[20]))
+                    {
+                        if (CommonMotions.cnvInt(objArry[4]) == 0 && CommonMotions.cnvInt(objArry[11]) == 0)
+                        {
+
+                        }
+                        else
+                        {
+                            ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
+                            SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2, false);
+                            if (!LDetailDB.InsertAction(DetailRec2))
+                            {
+                                LDetailDB.rollback();
+                                PersonDB.rollback();
+                                break;
+                            }
+                            recalc = true;
+                        }
+                    }
+
+                    if (CommonMotions.cnvInt(objArry[7]) != CommonMotions.cnvInt(objArry[21]))
+                    {
+                        if (CommonMotions.cnvInt(objArry[7]) == 0 && CommonMotions.cnvInt(objArry[12]) == 0)
+                        {
+
+                        }
+                        else
+                        {
+                            ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
+                            SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3, false);
+                            if (!LDetailDB.InsertAction(DetailRec3))
+                            {
+                                LDetailDB.rollback();
+                                PersonDB.rollback();
+                                break;
+                            }
+                            recalc = true;
+                        }
+                    }
+
+                    if (recalc)
+                    {
+
+                        // å·¥äº‹ã‚³ãƒ¼ãƒ‰ã�®ã‚»ãƒƒãƒˆ
+                        frm.ConstructionCode = CommonMotions.cnvInt(objArry[18]);
+
+                        // è¦‹ã�ˆã�ªã�„ç”»é�¢ã‚’å‡ºã�™
+                        frm.Hide();
+
+                        // å†�è¨ˆç®—å‡¦ç�†
+                        if (!frm.RecalculateLedger) break;
+                    }
+                }
+
+                // ç”»é�¢ã‚’é–‰ã�˜ã‚‹
+                frm.Close();
+
+                LDetailDB.commit();
+                PersonDB.commit();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                LedgerDB.close(); LedgerDB = null;
+                LDetailDB.close(); LDetailDB = null;
+                PersonDB.close(); PersonDB = null;
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region å·¥äº‹è©³ç´°å�°å¸³æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+        /// <summary>
+        /// å·¥äº‹è©³ç´°å�°å¸³æ˜Žç´°ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+        /// </summary>
+        /// <param name="GroupNo"></param>
+        /// <param name="objRec"></param>
+        /// <param name="DetailRec"></param>
+        private void SetDatailData(IOMPersonInCharge PersonDB, int GroupNo, object[] objRec, ref ConstructionLedgerDetail DetailRec, bool FirstFlg = true)
+        {
+            try
+            {
+                if (FirstFlg)
+                    DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[0]);	            // å·¥äº‹ã‚³ãƒ¼ãƒ‰
+                else
+                    DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[18]);	            // å·¥äº‹ã‚³ãƒ¼ãƒ‰
+                DetailRec.GroupCount = GroupNo;                                             // ã‚°ãƒ«ãƒ¼ãƒ—ç•ªå�·
+                DetailRec.FirstString = s_GroupTitle[GroupNo];                              // é …ç›®å��ç§°
+                DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;         // å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰ã‚¿ã‚¤ãƒ—
+                DetailRec.FixDataFlg = 1;                   // å›ºå®šãƒ‡ãƒ¼ã‚¿ãƒ•ãƒ©ã‚°
+                DetailRec.IndependentFlg = 1;               // ç‹¬ç«‹ãƒ‡ãƒ¼ã‚¿ãƒ•ãƒ©ã‚°
+                DetailRec.FluctuationFlg = 0;               // å¢—æ¸›ãƒ‡ãƒ¼ã‚¿ãƒ•ãƒ©ã‚°
+                DetailRec.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;        // æ‹…å½“ä¸­ãƒ•ãƒ©ã‚°
+
+                int iCompanyCode = 0;
+                int iPricevalue = 0;
+                int iSalaryFlg = 0;
+                int iSalaryDays = 0;
+
+                // å½“æœŸæœŸé¦–æ—¥ãƒ»æœŸæœ«æ—¥ã‚’å�–å¾—
+                DateTime dtDefaultStart = DateTime.MinValue;
+                DateTime dtDefaultEnd = DateTime.MinValue;
+                CreateDefaultStartAndEndDate(ref dtDefaultStart, ref dtDefaultEnd, CommonMotions.cnvInt(objRec[16]));
+
+                DateTime stDate = dtDefaultStart;
+                DateTime edDate = dtDefaultEnd;
+                DateTime maxDate = dtDefaultEnd;
+                // æœ€å°�ã�®é–‹å§‹æ—¥ã‚’å�–å¾—ã�™ã‚‹
+                stDate = dtDefaultStart;
+                DateTime wrkDate = CommonMotions.cnvDate(objRec[13]).Date;
+                if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
+                wrkDate = CommonMotions.cnvDate(objRec[14]).Date;
+                if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
+
+                // æœ€å¤§ã�®çµ‚äº†æ—¥ã‚’å�–å¾—ã�™ã‚‹
+                maxDate = dtDefaultEnd;
+                wrkDate = CommonMotions.cnvDate(objRec[15]).Date;
+                if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+                wrkDate = CommonMotions.cnvDate(objRec[16]).Date;
+                if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+
+                if (DetailRec.ConstructionCode == 2015050101)
+                {
+                    Debug.WriteLine("");
+                }
+                double Salary = 0;
+                double daylySalary = 0;
+                double DaysSalary = 0;
+                switch (GroupNo)
+                {
+                    case (int)FrmConstructionLedger.DataGroup.Payroll:
+                        // æ‹…å½“è€…
+                        iCompanyCode = CommonMotions.cnvInt(objRec[1]);
+                        iSalaryFlg = CommonMotions.cnvInt(objRec[2]);
+                        iSalaryDays = CommonMotions.cnvInt(objRec[3]);
+                        if (iCompanyCode == 0)
+                        {
+                            iCompanyCode = CommonMotions.cnvInt(objRec[10]);
+                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                            iSalaryDays = 0;
+                        }
+                        if (iCompanyCode != 0)
+                        {
+                            // æ‹…å½“è€…ãƒžã‚¹ã‚¿ã‚ˆã‚Šæ‹…å½“è€…å��ã‚’å�–å¾—ã�™ã‚‹
+                            PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                            string strPerson = PersonDB.CreatePrimarykeyString(iCompanyCode);
+                            PersonDB.SelectAction(strPerson, ref PersonRec, false);
+
+                            Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;                                      // æœˆé¡�çµ¦ä¸Žè¨ˆç®—
+                            daylySalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);                          // æ—¥å½“è¨ˆç®—
+
+                            // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
+                            switch (iSalaryFlg)
+                            {
+                                case (int)CommonDefine.SalaryDevision.All:
+                                    // ----- å…¨æ—¥æŒ¯åˆ†
+                                    // ç�€å·¥æ—¥
+                                    DateTime dtStart = stDate;
+                                    // å®Œäº†æ—¥
+                                    DateTime dtLast = maxDate;
+
+                                    // ç¨¼åƒ�æ—¥å�–å¾—
+                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+
+                                    // çµ¦ä¸Žè¨ˆç®—
+                                    iPricevalue = CommonMotions.cnvRound(daylySalary * WorkingDay);
+
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.Noting:
+                                    // ----- æŒ‡å®šç„¡ã�—
+
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.DaysInput:
+                                    // ----- æ—¥æ•°æŒ‡å®š
+                                    iPricevalue = CommonMotions.cnvRound(daylySalary * iSalaryDays);
+
+                                    break;
+                            }
+                        }
+                        break;
+                    case (int)FrmConstructionLedger.DataGroup.Assistant:
+                        // å‰¯æ‹…å½“è€…
+                        iCompanyCode = CommonMotions.cnvInt(objRec[4]);
+                        iSalaryFlg = CommonMotions.cnvInt(objRec[5]);
+                        iSalaryDays = CommonMotions.cnvInt(objRec[6]);
+                        if (iCompanyCode == 0)
+                        {
+                            iCompanyCode = CommonMotions.cnvInt(objRec[11]);
+                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                            iSalaryDays = 0;
+                        }
+
+                        if (iCompanyCode != 0)
+                        {
+                            Salary = CommonDefine.AssistantMonthryCost;
+                            // æ—¥é¡�çµ¦ä¸Žå�–å¾—
+                            DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
+                            // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
+                            switch (iSalaryFlg)
+                            {
+                                case (int)CommonDefine.SalaryDevision.All:
+                                    // ----- å…¨æ—¥æŒ¯åˆ†
+                                    DateTime dtStart = stDate;
+                                    // å®Œäº†æ—¥
+                                    DateTime dtLast = maxDate;
+
+                                    // ç¨¼åƒ�æ—¥å�–å¾—
+                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+
+                                    // çµ¦ä¸Žè¨ˆç®—
+                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.Noting:
+                                    // ----- æŒ‡å®šç„¡ã�—
+
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.DaysInput:
+                                    // ----- æ—¥æ•°æŒ‡å®š
+                                    // çµ¦ä¸Žè¨ˆç®—
+                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
+                                    break;
+                            }
+                        }
+                        break;
+
+                    case (int)FrmConstructionLedger.DataGroup.Instructor:
+                        // æŒ‡å°Žå“¡
+                        iCompanyCode = CommonMotions.cnvInt(objRec[7]);
+                        iSalaryFlg = CommonMotions.cnvInt(objRec[8]);
+                        iSalaryDays = CommonMotions.cnvInt(objRec[9]);
+                        if (iCompanyCode == 0)
+                        {
+                            iCompanyCode = CommonMotions.cnvInt(objRec[12]);
+                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                            iSalaryDays = 0;
+                        }
+
+                        if (iCompanyCode != 0)
+                        {
+                            // æœˆé¡�çµ¦ä¸Žè¨ˆç®—
+                            Salary = CommonDefine.InstructorMonthryCost;
+                            // æ—¥é¡�çµ¦ä¸Žå�–å¾—
+                            DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
+                            // å·¥æœŸã�¨çµ¦ä¸Žé¡�ã‚’è¡¨ç¤ºã�™ã‚‹
+                            switch (iSalaryFlg)
+                            {
+                                case (int)CommonDefine.SalaryDevision.All:
+                                    // ----- å…¨æ—¥æŒ¯åˆ†
+                                    DateTime dtStart = stDate;
+                                    // å®Œäº†æ—¥
+                                    DateTime dtLast = maxDate;
+
+                                    // ç¨¼åƒ�æ—¥å�–å¾—
+                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+
+                                    // çµ¦ä¸Žè¨ˆç®—
+                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.Noting:
+                                    // ----- æŒ‡å®šç„¡ã�—
+
+                                    break;
+                                case (int)CommonDefine.SalaryDevision.DaysInput:
+                                    // ----- æ—¥æ•°æŒ‡å®š
+                                    // çµ¦ä¸Žè¨ˆç®—
+                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
+                                    break;
+                            }
+                        }
+                        break;
+                }
+
+                DetailRec.CompanyCode = iCompanyCode;                   // å�”åŠ›ä¼šç¤¾ã‚³ãƒ¼ãƒ‰
+                DetailRec.EstimatePrice = iPricevalue;                  // äºˆç®—ï¼ˆè¦‹ç©�ï¼‰é‡‘é¡�
+                DetailRec.ExecutionAmount = iPricevalue;                // å®Ÿè¡Œé‡‘é¡�
+                DetailRec.SalaryFlg = iSalaryFlg;                       // çµ¦ä¸ŽæŒ¯åˆ†åŒºåˆ†
+                DetailRec.SalaryDays = iSalaryDays;                     // çµ¦ä¸ŽæŒ¯åˆ†æ—¥æ•°
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã�®æœŸé¦–æ—¥ãƒ»æœŸæœ«æ—¥ã‚’æ±‚ã‚�ã‚‹
+        /// <summary>
+        /// ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã�®æœŸé¦–æ—¥ãƒ»æœŸæœ«æ—¥ã‚’æ±‚ã‚�ã‚‹
+        /// </summary>
+        /// <param name="dtStart"></param>
+        /// <param name="dtEnd"></param>
+        private void CreateDefaultStartAndEndDate(ref DateTime dtStart, ref DateTime dtEnd, int C16)
+        {
+            try
+            {
+                // å½“æœŸæœŸé¦–å¹´æœˆæ—¥ã‚’å�–å¾—
+                int iYear = 0;
+                int month = 0;
+                int day = 0;
+                bool bPeriod = true;
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                {   // å–¶æ¥­æœŸ
+                    iYear = CommonMotions.PeriodCountToYear(C16);
+                    bPeriod = true;
+                }
+                CommonMotions.GetBeginningMonthDay(bPeriod, ref month, ref day);
+                dtStart = new DateTime(iYear, month, day);
+                dtEnd = dtStart.AddYears(1).AddDays(-1);     // çµ‚äº†ã�¯ï¼‹1å¹´ï¼�1æ—¥
+
+                // ä»ŠæœŸã�®å ´å�ˆã�¯ä»Šæ—¥ã�®æ—¥ä»˜ã�¾ã�§ã‚’è¨ˆç®—ã�™ã‚‹
+                if (C16 == CommonMotions.SystemMasterData.BusinessPeriod) dtEnd = DateTime.Today;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ä¸€æ‹¬å†�è¨ˆç®—å‡¦ç�†
+        /// <summary>
+        /// ä¸€æ‹¬å†�è¨ˆç®—å‡¦ç�†
+        /// </summary>
+        private void ReCalculation()
+        {
+            IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            FrmConstructionLedger frm = new FrmConstructionLedger();
+            try
+            {
+                string strSQL = "SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGER";
+                ArrayList arList = new ArrayList();
+                if (!LedgerDB.ExecuteReader(strSQL, ref arList)) return;
+
+                foreach (object[] objwrk in arList)
+                {
+                    // å·¥äº‹ã‚³ãƒ¼ãƒ‰ã�®ã‚»ãƒƒãƒˆ
+                    frm.ConstructionCode = CommonMotions.cnvInt(objwrk[0]);
+
+                    // è¦‹ã�ˆã�ªã�„ç”»é�¢ã‚’å‡ºã�™
+                    frm.Hide();
+
+                    // å†�è¨ˆç®—å‡¦ç�†
+                    if (!frm.RecalculateLedger) break;
+                }
+
+                // ç”»é�¢ã‚’é–‰ã�˜ã‚‹
+                frm.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                LedgerDB.close(); LedgerDB = null;
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
         // ---------- ãƒ‡ãƒ¼ã‚¿ã‚³ãƒ³ãƒ�ãƒ¼ãƒˆãƒ­ã‚¸ãƒƒã‚¯
     }
 }
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs	(revision 20)
@@ -436,6 +436,7 @@
             // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
             m_initDataLoad = true;
             SetcmbDepartment();
+            m_initDataLoad = true;
             SetcmbPersons();
             m_initDataLoad = true;
 
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 20)
@@ -49,31 +49,6 @@
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
-            this.pnlPayroll = new System.Windows.Forms.Panel();
-            this.lblTotalCalcValue2 = new System.Windows.Forms.Label();
-            this.label23 = new System.Windows.Forms.Label();
-            this.label11 = new System.Windows.Forms.Label();
-            this.lblTotalCalcValue1 = new System.Windows.Forms.Label();
-            this.label19 = new System.Windows.Forms.Label();
-            this.lblPlusorMinus2 = new System.Windows.Forms.Label();
-            this.label16 = new System.Windows.Forms.Label();
-            this.lblPlusorMinus1 = new System.Windows.Forms.Label();
-            this.lblTotalCalcValue = new System.Windows.Forms.Label();
-            this.label12 = new System.Windows.Forms.Label();
-            this.label22 = new System.Windows.Forms.Label();
-            this.lblTotalValue2 = new System.Windows.Forms.Label();
-            this.label14 = new System.Windows.Forms.Label();
-            this.lblCalcValue2 = new System.Windows.Forms.Label();
-            this.label20 = new System.Windows.Forms.Label();
-            this.label13 = new System.Windows.Forms.Label();
-            this.lblCalcValue3 = new System.Windows.Forms.Label();
-            this.lblTotalValue = new System.Windows.Forms.Label();
-            this.label17 = new System.Windows.Forms.Label();
-            this.label6 = new System.Windows.Forms.Label();
-            this.lblPayroll = new System.Windows.Forms.Label();
-            this.label15 = new System.Windows.Forms.Label();
-            this.lblCalcValue1 = new System.Windows.Forms.Label();
-            this.label9 = new System.Windows.Forms.Label();
             this.cmbDepartment = new System.Windows.Forms.ComboBox();
             this.label5 = new System.Windows.Forms.Label();
             this.label2 = new System.Windows.Forms.Label();
@@ -100,10 +75,39 @@
             this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pnlPayroll = new System.Windows.Forms.Panel();
+            this.lblEndDate = new System.Windows.Forms.Label();
+            this.lblStartDate = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.lblTotalCalcValue2 = new System.Windows.Forms.Label();
+            this.label23 = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.lblTotalCalcValue1 = new System.Windows.Forms.Label();
+            this.label19 = new System.Windows.Forms.Label();
+            this.lblPlusorMinus2 = new System.Windows.Forms.Label();
+            this.label16 = new System.Windows.Forms.Label();
+            this.lblPlusorMinus1 = new System.Windows.Forms.Label();
+            this.lblTotalCalcValue = new System.Windows.Forms.Label();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label22 = new System.Windows.Forms.Label();
+            this.lblTotalValue2 = new System.Windows.Forms.Label();
+            this.label14 = new System.Windows.Forms.Label();
+            this.lblCalcValue2 = new System.Windows.Forms.Label();
+            this.label20 = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.lblCalcValue3 = new System.Windows.Forms.Label();
+            this.lblTotalValue = new System.Windows.Forms.Label();
+            this.label17 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.lblPayroll = new System.Windows.Forms.Label();
+            this.label15 = new System.Windows.Forms.Label();
+            this.lblCalcValue1 = new System.Windows.Forms.Label();
+            this.label10 = new System.Windows.Forms.Label();
             this.groupBox1.SuspendLayout();
-            this.pnlPayroll.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.pnlPayroll.SuspendLayout();
             this.SuspendLayout();
             // 
             // btnEnd
@@ -153,343 +157,6 @@
             this.groupBox1.TabIndex = 0;
             this.groupBox1.TabStop = false;
             // 
-            // pnlPayroll
-            // 
-            this.pnlPayroll.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.pnlPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue2);
-            this.pnlPayroll.Controls.Add(this.label23);
-            this.pnlPayroll.Controls.Add(this.label11);
-            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue1);
-            this.pnlPayroll.Controls.Add(this.label19);
-            this.pnlPayroll.Controls.Add(this.lblPlusorMinus2);
-            this.pnlPayroll.Controls.Add(this.label16);
-            this.pnlPayroll.Controls.Add(this.lblPlusorMinus1);
-            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue);
-            this.pnlPayroll.Controls.Add(this.label12);
-            this.pnlPayroll.Controls.Add(this.label22);
-            this.pnlPayroll.Controls.Add(this.lblTotalValue2);
-            this.pnlPayroll.Controls.Add(this.label14);
-            this.pnlPayroll.Controls.Add(this.lblCalcValue2);
-            this.pnlPayroll.Controls.Add(this.label20);
-            this.pnlPayroll.Controls.Add(this.label13);
-            this.pnlPayroll.Controls.Add(this.lblCalcValue3);
-            this.pnlPayroll.Controls.Add(this.lblTotalValue);
-            this.pnlPayroll.Controls.Add(this.label17);
-            this.pnlPayroll.Controls.Add(this.label6);
-            this.pnlPayroll.Controls.Add(this.lblPayroll);
-            this.pnlPayroll.Controls.Add(this.label15);
-            this.pnlPayroll.Controls.Add(this.lblCalcValue1);
-            this.pnlPayroll.Controls.Add(this.label9);
-            this.pnlPayroll.Location = new System.Drawing.Point(5, 36);
-            this.pnlPayroll.Name = "pnlPayroll";
-            this.pnlPayroll.Size = new System.Drawing.Size(1320, 84);
-            this.pnlPayroll.TabIndex = 45;
-            // 
-            // lblTotalCalcValue2
-            // 
-            this.lblTotalCalcValue2.BackColor = System.Drawing.Color.White;
-            this.lblTotalCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotalCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotalCalcValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue2.Location = new System.Drawing.Point(643, 53);
-            this.lblTotalCalcValue2.Name = "lblTotalCalcValue2";
-            this.lblTotalCalcValue2.Size = new System.Drawing.Size(140, 25);
-            this.lblTotalCalcValue2.TabIndex = 52;
-            this.lblTotalCalcValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label23
-            // 
-            this.label23.BackColor = System.Drawing.Color.LightSalmon;
-            this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label23.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label23.ForeColor = System.Drawing.Color.White;
-            this.label23.Location = new System.Drawing.Point(533, 53);
-            this.label23.Name = "label23";
-            this.label23.Size = new System.Drawing.Size(110, 25);
-            this.label23.TabIndex = 51;
-            this.label23.Text = "å½“æœŸç´”åˆ©ç›Š";
-            this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label11
-            // 
-            this.label11.AutoSize = true;
-            this.label11.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label11.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.label11.ForeColor = System.Drawing.Color.Black;
-            this.label11.Location = new System.Drawing.Point(807, 25);
-            this.label11.Name = "label11";
-            this.label11.Size = new System.Drawing.Size(42, 31);
-            this.label11.TabIndex = 48;
-            this.label11.Text = "ï¼�";
-            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblTotalCalcValue1
-            // 
-            this.lblTotalCalcValue1.BackColor = System.Drawing.Color.White;
-            this.lblTotalCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotalCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotalCalcValue1.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue1.Location = new System.Drawing.Point(983, 28);
-            this.lblTotalCalcValue1.Name = "lblTotalCalcValue1";
-            this.lblTotalCalcValue1.Size = new System.Drawing.Size(140, 25);
-            this.lblTotalCalcValue1.TabIndex = 50;
-            this.lblTotalCalcValue1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label19
-            // 
-            this.label19.BackColor = System.Drawing.Color.LightSalmon;
-            this.label19.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label19.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label19.ForeColor = System.Drawing.Color.White;
-            this.label19.Location = new System.Drawing.Point(873, 28);
-            this.label19.Name = "label19";
-            this.label19.Size = new System.Drawing.Size(110, 25);
-            this.label19.TabIndex = 49;
-            this.label19.Text = "å½“æœŸç´”åˆ©ç›Š";
-            this.label19.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblPlusorMinus2
-            // 
-            this.lblPlusorMinus2.AutoSize = true;
-            this.lblPlusorMinus2.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.lblPlusorMinus2.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.lblPlusorMinus2.ForeColor = System.Drawing.Color.Black;
-            this.lblPlusorMinus2.Location = new System.Drawing.Point(471, 52);
-            this.lblPlusorMinus2.Name = "lblPlusorMinus2";
-            this.lblPlusorMinus2.Size = new System.Drawing.Size(35, 27);
-            this.lblPlusorMinus2.TabIndex = 47;
-            this.lblPlusorMinus2.Text = "ï¼‹";
-            this.lblPlusorMinus2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label16
-            // 
-            this.label16.AutoSize = true;
-            this.label16.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label16.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.label16.ForeColor = System.Drawing.Color.Black;
-            this.label16.Location = new System.Drawing.Point(807, 50);
-            this.label16.Name = "label16";
-            this.label16.Size = new System.Drawing.Size(42, 31);
-            this.label16.TabIndex = 31;
-            this.label16.Text = "ï¼�";
-            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblPlusorMinus1
-            // 
-            this.lblPlusorMinus1.AutoSize = true;
-            this.lblPlusorMinus1.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.lblPlusorMinus1.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.lblPlusorMinus1.ForeColor = System.Drawing.Color.Black;
-            this.lblPlusorMinus1.Location = new System.Drawing.Point(471, 27);
-            this.lblPlusorMinus1.Name = "lblPlusorMinus1";
-            this.lblPlusorMinus1.Size = new System.Drawing.Size(35, 27);
-            this.lblPlusorMinus1.TabIndex = 31;
-            this.lblPlusorMinus1.Text = "ï¼‹";
-            this.lblPlusorMinus1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblTotalCalcValue
-            // 
-            this.lblTotalCalcValue.BackColor = System.Drawing.Color.White;
-            this.lblTotalCalcValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotalCalcValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotalCalcValue.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue.Location = new System.Drawing.Point(983, 53);
-            this.lblTotalCalcValue.Name = "lblTotalCalcValue";
-            this.lblTotalCalcValue.Size = new System.Drawing.Size(140, 25);
-            this.lblTotalCalcValue.TabIndex = 33;
-            this.lblTotalCalcValue.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label12
-            // 
-            this.label12.AutoSize = true;
-            this.label12.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label12.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.label12.ForeColor = System.Drawing.Color.Black;
-            this.label12.Location = new System.Drawing.Point(471, 2);
-            this.label12.Name = "label12";
-            this.label12.Size = new System.Drawing.Size(35, 27);
-            this.label12.TabIndex = 2;
-            this.label12.Text = "ï¼�";
-            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label22
-            // 
-            this.label22.BackColor = System.Drawing.Color.Navy;
-            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label22.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label22.ForeColor = System.Drawing.Color.Yellow;
-            this.label22.Location = new System.Drawing.Point(873, 53);
-            this.label22.Name = "label22";
-            this.label22.Size = new System.Drawing.Size(110, 25);
-            this.label22.TabIndex = 32;
-            this.label22.Text = "å½“æœŸæš«å®šç´”åˆ©ç›Š";
-            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblTotalValue2
-            // 
-            this.lblTotalValue2.BackColor = System.Drawing.Color.White;
-            this.lblTotalValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotalValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotalValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalValue2.Location = new System.Drawing.Point(643, 28);
-            this.lblTotalValue2.Name = "lblTotalValue2";
-            this.lblTotalValue2.Size = new System.Drawing.Size(140, 25);
-            this.lblTotalValue2.TabIndex = 33;
-            this.lblTotalValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label14
-            // 
-            this.label14.BackColor = System.Drawing.Color.DarkSeaGreen;
-            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label14.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label14.ForeColor = System.Drawing.Color.DarkRed;
-            this.label14.Location = new System.Drawing.Point(533, 28);
-            this.label14.Name = "label14";
-            this.label14.Size = new System.Drawing.Size(110, 25);
-            this.label14.TabIndex = 32;
-            this.label14.Text = "çµŒé�Žçµ¦ä¸Žå·®é¡�";
-            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblCalcValue2
-            // 
-            this.lblCalcValue2.BackColor = System.Drawing.Color.White;
-            this.lblCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblCalcValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue2.Location = new System.Drawing.Point(303, 28);
-            this.lblCalcValue2.Name = "lblCalcValue2";
-            this.lblCalcValue2.Size = new System.Drawing.Size(140, 25);
-            this.lblCalcValue2.TabIndex = 46;
-            this.lblCalcValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label20
-            // 
-            this.label20.BackColor = System.Drawing.Color.DarkOrange;
-            this.label20.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label20.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label20.ForeColor = System.Drawing.Color.White;
-            this.label20.Location = new System.Drawing.Point(193, 28);
-            this.label20.Name = "label20";
-            this.label20.Size = new System.Drawing.Size(110, 25);
-            this.label20.TabIndex = 11;
-            this.label20.Text = "æŒ¯åˆ†æ¸ˆç´”åˆ©ç›Š";
-            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label13
-            // 
-            this.label13.AutoSize = true;
-            this.label13.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label13.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.label13.ForeColor = System.Drawing.Color.Black;
-            this.label13.Location = new System.Drawing.Point(807, 0);
-            this.label13.Name = "label13";
-            this.label13.Size = new System.Drawing.Size(42, 31);
-            this.label13.TabIndex = 3;
-            this.label13.Text = "ï¼�";
-            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblCalcValue3
-            // 
-            this.lblCalcValue3.BackColor = System.Drawing.Color.White;
-            this.lblCalcValue3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCalcValue3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblCalcValue3.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue3.Location = new System.Drawing.Point(303, 53);
-            this.lblCalcValue3.Name = "lblCalcValue3";
-            this.lblCalcValue3.Size = new System.Drawing.Size(140, 25);
-            this.lblCalcValue3.TabIndex = 7;
-            this.lblCalcValue3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblTotalValue
-            // 
-            this.lblTotalValue.BackColor = System.Drawing.Color.White;
-            this.lblTotalValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotalValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotalValue.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalValue.Location = new System.Drawing.Point(983, 3);
-            this.lblTotalValue.Name = "lblTotalValue";
-            this.lblTotalValue.Size = new System.Drawing.Size(140, 25);
-            this.lblTotalValue.TabIndex = 5;
-            this.lblTotalValue.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label17
-            // 
-            this.label17.BackColor = System.Drawing.Color.Green;
-            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label17.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label17.ForeColor = System.Drawing.Color.White;
-            this.label17.Location = new System.Drawing.Point(193, 53);
-            this.label17.Name = "label17";
-            this.label17.Size = new System.Drawing.Size(110, 25);
-            this.label17.TabIndex = 6;
-            this.label17.Text = "æœªæŒ¯åˆ†ç´”åˆ©ç›Š";
-            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label6
-            // 
-            this.label6.BackColor = System.Drawing.Color.Black;
-            this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label6.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label6.ForeColor = System.Drawing.Color.White;
-            this.label6.Location = new System.Drawing.Point(533, 3);
-            this.label6.Name = "label6";
-            this.label6.Size = new System.Drawing.Size(110, 25);
-            this.label6.TabIndex = 0;
-            this.label6.Text = "å½“æœŸçµŒé�Žçµ¦ä¸Ž";
-            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblPayroll
-            // 
-            this.lblPayroll.BackColor = System.Drawing.Color.White;
-            this.lblPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblPayroll.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblPayroll.ForeColor = System.Drawing.Color.Black;
-            this.lblPayroll.Location = new System.Drawing.Point(643, 3);
-            this.lblPayroll.Name = "lblPayroll";
-            this.lblPayroll.Size = new System.Drawing.Size(140, 25);
-            this.lblPayroll.TabIndex = 0;
-            this.lblPayroll.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label15
-            // 
-            this.label15.BackColor = System.Drawing.Color.DarkSeaGreen;
-            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label15.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label15.ForeColor = System.Drawing.Color.DarkRed;
-            this.label15.Location = new System.Drawing.Point(873, 3);
-            this.label15.Name = "label15";
-            this.label15.Size = new System.Drawing.Size(110, 25);
-            this.label15.TabIndex = 4;
-            this.label15.Text = "çµŒé�Žçµ¦ä¸Žå·®é¡�";
-            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblCalcValue1
-            // 
-            this.lblCalcValue1.BackColor = System.Drawing.Color.White;
-            this.lblCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblCalcValue1.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue1.Location = new System.Drawing.Point(303, 3);
-            this.lblCalcValue1.Name = "lblCalcValue1";
-            this.lblCalcValue1.Size = new System.Drawing.Size(140, 25);
-            this.lblCalcValue1.TabIndex = 1;
-            this.lblCalcValue1.Text = "-999,999,999";
-            this.lblCalcValue1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label9
-            // 
-            this.label9.BackColor = System.Drawing.Color.Blue;
-            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label9.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label9.ForeColor = System.Drawing.Color.White;
-            this.label9.Location = new System.Drawing.Point(193, 3);
-            this.label9.Name = "label9";
-            this.label9.Size = new System.Drawing.Size(110, 25);
-            this.label9.TabIndex = 0;
-            this.label9.Text = "æŒ¯åˆ†æ¸ˆçµ¦ä¸Ž";
-            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // cmbDepartment
             // 
             this.cmbDepartment.BackColor = System.Drawing.Color.White;
@@ -841,6 +508,397 @@
             this.Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             // 
+            // pnlPayroll
+            // 
+            this.pnlPayroll.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.pnlPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.pnlPayroll.Controls.Add(this.lblEndDate);
+            this.pnlPayroll.Controls.Add(this.lblStartDate);
+            this.pnlPayroll.Controls.Add(this.label8);
+            this.pnlPayroll.Controls.Add(this.label6);
+            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue2);
+            this.pnlPayroll.Controls.Add(this.label23);
+            this.pnlPayroll.Controls.Add(this.label11);
+            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue1);
+            this.pnlPayroll.Controls.Add(this.label19);
+            this.pnlPayroll.Controls.Add(this.lblPlusorMinus2);
+            this.pnlPayroll.Controls.Add(this.label16);
+            this.pnlPayroll.Controls.Add(this.lblPlusorMinus1);
+            this.pnlPayroll.Controls.Add(this.lblTotalCalcValue);
+            this.pnlPayroll.Controls.Add(this.label12);
+            this.pnlPayroll.Controls.Add(this.label22);
+            this.pnlPayroll.Controls.Add(this.lblTotalValue2);
+            this.pnlPayroll.Controls.Add(this.label14);
+            this.pnlPayroll.Controls.Add(this.lblCalcValue2);
+            this.pnlPayroll.Controls.Add(this.label20);
+            this.pnlPayroll.Controls.Add(this.label13);
+            this.pnlPayroll.Controls.Add(this.lblCalcValue3);
+            this.pnlPayroll.Controls.Add(this.lblTotalValue);
+            this.pnlPayroll.Controls.Add(this.label17);
+            this.pnlPayroll.Controls.Add(this.label9);
+            this.pnlPayroll.Controls.Add(this.lblPayroll);
+            this.pnlPayroll.Controls.Add(this.label15);
+            this.pnlPayroll.Controls.Add(this.lblCalcValue1);
+            this.pnlPayroll.Controls.Add(this.label10);
+            this.pnlPayroll.Location = new System.Drawing.Point(3, 36);
+            this.pnlPayroll.Name = "pnlPayroll";
+            this.pnlPayroll.Size = new System.Drawing.Size(1320, 84);
+            this.pnlPayroll.TabIndex = 47;
+            // 
+            // lblEndDate
+            // 
+            this.lblEndDate.BackColor = System.Drawing.Color.White;
+            this.lblEndDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblEndDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblEndDate.ForeColor = System.Drawing.Color.Black;
+            this.lblEndDate.Location = new System.Drawing.Point(1104, 28);
+            this.lblEndDate.Name = "lblEndDate";
+            this.lblEndDate.Size = new System.Drawing.Size(140, 25);
+            this.lblEndDate.TabIndex = 54;
+            this.lblEndDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblStartDate
+            // 
+            this.lblStartDate.BackColor = System.Drawing.Color.White;
+            this.lblStartDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblStartDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblStartDate.ForeColor = System.Drawing.Color.Black;
+            this.lblStartDate.Location = new System.Drawing.Point(1104, 3);
+            this.lblStartDate.Name = "lblStartDate";
+            this.lblStartDate.Size = new System.Drawing.Size(140, 25);
+            this.lblStartDate.TabIndex = 54;
+            this.lblStartDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label8
+            // 
+            this.label8.BackColor = System.Drawing.Color.Ivory;
+            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label8.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label8.ForeColor = System.Drawing.Color.Black;
+            this.label8.Location = new System.Drawing.Point(994, 28);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(110, 25);
+            this.label8.TabIndex = 53;
+            this.label8.Text = "çµ¦ä¸Žè¨ˆç®—çµ‚äº†æ—¥";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label6
+            // 
+            this.label6.BackColor = System.Drawing.Color.Ivory;
+            this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label6.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label6.ForeColor = System.Drawing.Color.Black;
+            this.label6.Location = new System.Drawing.Point(994, 3);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(110, 25);
+            this.label6.TabIndex = 53;
+            this.label6.Text = "çµ¦ä¸Žè¨ˆç®—é–‹å§‹æ—¥";
+            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblTotalCalcValue2
+            // 
+            this.lblTotalCalcValue2.BackColor = System.Drawing.Color.White;
+            this.lblTotalCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotalCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotalCalcValue2.ForeColor = System.Drawing.Color.Black;
+            this.lblTotalCalcValue2.Location = new System.Drawing.Point(489, 53);
+            this.lblTotalCalcValue2.Name = "lblTotalCalcValue2";
+            this.lblTotalCalcValue2.Size = new System.Drawing.Size(140, 25);
+            this.lblTotalCalcValue2.TabIndex = 52;
+            this.lblTotalCalcValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label23
+            // 
+            this.label23.BackColor = System.Drawing.Color.LightSalmon;
+            this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label23.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label23.ForeColor = System.Drawing.Color.White;
+            this.label23.Location = new System.Drawing.Point(379, 53);
+            this.label23.Name = "label23";
+            this.label23.Size = new System.Drawing.Size(110, 25);
+            this.label23.TabIndex = 51;
+            this.label23.Text = "å½“æœŸç´”åˆ©ç›Š";
+            this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label11
+            // 
+            this.label11.AutoSize = true;
+            this.label11.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label11.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(645, 34);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(25, 16);
+            this.label11.TabIndex = 48;
+            this.label11.Text = "ï¼�";
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblTotalCalcValue1
+            // 
+            this.lblTotalCalcValue1.BackColor = System.Drawing.Color.White;
+            this.lblTotalCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotalCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotalCalcValue1.ForeColor = System.Drawing.Color.Black;
+            this.lblTotalCalcValue1.Location = new System.Drawing.Point(796, 28);
+            this.lblTotalCalcValue1.Name = "lblTotalCalcValue1";
+            this.lblTotalCalcValue1.Size = new System.Drawing.Size(140, 25);
+            this.lblTotalCalcValue1.TabIndex = 50;
+            this.lblTotalCalcValue1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label19
+            // 
+            this.label19.BackColor = System.Drawing.Color.LightSalmon;
+            this.label19.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label19.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label19.ForeColor = System.Drawing.Color.White;
+            this.label19.Location = new System.Drawing.Point(686, 28);
+            this.label19.Name = "label19";
+            this.label19.Size = new System.Drawing.Size(110, 25);
+            this.label19.TabIndex = 49;
+            this.label19.Text = "å½“æœŸç´”åˆ©ç›Š";
+            this.label19.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblPlusorMinus2
+            // 
+            this.lblPlusorMinus2.AutoSize = true;
+            this.lblPlusorMinus2.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.lblPlusorMinus2.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblPlusorMinus2.ForeColor = System.Drawing.Color.Black;
+            this.lblPlusorMinus2.Location = new System.Drawing.Point(338, 59);
+            this.lblPlusorMinus2.Name = "lblPlusorMinus2";
+            this.lblPlusorMinus2.Size = new System.Drawing.Size(25, 16);
+            this.lblPlusorMinus2.TabIndex = 47;
+            this.lblPlusorMinus2.Text = "ï¼‹";
+            this.lblPlusorMinus2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label16
+            // 
+            this.label16.AutoSize = true;
+            this.label16.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label16.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label16.ForeColor = System.Drawing.Color.Black;
+            this.label16.Location = new System.Drawing.Point(645, 59);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(25, 16);
+            this.label16.TabIndex = 31;
+            this.label16.Text = "ï¼�";
+            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblPlusorMinus1
+            // 
+            this.lblPlusorMinus1.AutoSize = true;
+            this.lblPlusorMinus1.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.lblPlusorMinus1.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblPlusorMinus1.ForeColor = System.Drawing.Color.Black;
+            this.lblPlusorMinus1.Location = new System.Drawing.Point(338, 34);
+            this.lblPlusorMinus1.Name = "lblPlusorMinus1";
+            this.lblPlusorMinus1.Size = new System.Drawing.Size(25, 16);
+            this.lblPlusorMinus1.TabIndex = 31;
+            this.lblPlusorMinus1.Text = "ï¼‹";
+            this.lblPlusorMinus1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblTotalCalcValue
+            // 
+            this.lblTotalCalcValue.BackColor = System.Drawing.Color.White;
+            this.lblTotalCalcValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotalCalcValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotalCalcValue.ForeColor = System.Drawing.Color.Black;
+            this.lblTotalCalcValue.Location = new System.Drawing.Point(796, 53);
+            this.lblTotalCalcValue.Name = "lblTotalCalcValue";
+            this.lblTotalCalcValue.Size = new System.Drawing.Size(140, 25);
+            this.lblTotalCalcValue.TabIndex = 33;
+            this.lblTotalCalcValue.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label12
+            // 
+            this.label12.AutoSize = true;
+            this.label12.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label12.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(338, 7);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(25, 16);
+            this.label12.TabIndex = 2;
+            this.label12.Text = "ï¼�";
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label22
+            // 
+            this.label22.BackColor = System.Drawing.Color.Navy;
+            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label22.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label22.ForeColor = System.Drawing.Color.Yellow;
+            this.label22.Location = new System.Drawing.Point(686, 53);
+            this.label22.Name = "label22";
+            this.label22.Size = new System.Drawing.Size(110, 25);
+            this.label22.TabIndex = 32;
+            this.label22.Text = "å½“æœŸæš«å®šç´”åˆ©ç›Š";
+            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblTotalValue2
+            // 
+            this.lblTotalValue2.BackColor = System.Drawing.Color.White;
+            this.lblTotalValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotalValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotalValue2.ForeColor = System.Drawing.Color.Black;
+            this.lblTotalValue2.Location = new System.Drawing.Point(489, 28);
+            this.lblTotalValue2.Name = "lblTotalValue2";
+            this.lblTotalValue2.Size = new System.Drawing.Size(140, 25);
+            this.lblTotalValue2.TabIndex = 33;
+            this.lblTotalValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label14
+            // 
+            this.label14.BackColor = System.Drawing.Color.DarkSeaGreen;
+            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label14.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label14.ForeColor = System.Drawing.Color.DarkRed;
+            this.label14.Location = new System.Drawing.Point(379, 28);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(110, 25);
+            this.label14.TabIndex = 32;
+            this.label14.Text = "çµŒé�Žçµ¦ä¸Žå·®é¡�";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblCalcValue2
+            // 
+            this.lblCalcValue2.BackColor = System.Drawing.Color.White;
+            this.lblCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCalcValue2.ForeColor = System.Drawing.Color.Black;
+            this.lblCalcValue2.Location = new System.Drawing.Point(182, 28);
+            this.lblCalcValue2.Name = "lblCalcValue2";
+            this.lblCalcValue2.Size = new System.Drawing.Size(140, 25);
+            this.lblCalcValue2.TabIndex = 46;
+            this.lblCalcValue2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label20
+            // 
+            this.label20.BackColor = System.Drawing.Color.DarkOrange;
+            this.label20.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label20.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label20.ForeColor = System.Drawing.Color.White;
+            this.label20.Location = new System.Drawing.Point(72, 28);
+            this.label20.Name = "label20";
+            this.label20.Size = new System.Drawing.Size(110, 25);
+            this.label20.TabIndex = 11;
+            this.label20.Text = "æŒ¯åˆ†æ¸ˆç´”åˆ©ç›Š";
+            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label13
+            // 
+            this.label13.AutoSize = true;
+            this.label13.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label13.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(645, 7);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(25, 16);
+            this.label13.TabIndex = 3;
+            this.label13.Text = "ï¼�";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblCalcValue3
+            // 
+            this.lblCalcValue3.BackColor = System.Drawing.Color.White;
+            this.lblCalcValue3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCalcValue3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCalcValue3.ForeColor = System.Drawing.Color.Black;
+            this.lblCalcValue3.Location = new System.Drawing.Point(182, 53);
+            this.lblCalcValue3.Name = "lblCalcValue3";
+            this.lblCalcValue3.Size = new System.Drawing.Size(140, 25);
+            this.lblCalcValue3.TabIndex = 7;
+            this.lblCalcValue3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblTotalValue
+            // 
+            this.lblTotalValue.BackColor = System.Drawing.Color.White;
+            this.lblTotalValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotalValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotalValue.ForeColor = System.Drawing.Color.Black;
+            this.lblTotalValue.Location = new System.Drawing.Point(796, 3);
+            this.lblTotalValue.Name = "lblTotalValue";
+            this.lblTotalValue.Size = new System.Drawing.Size(140, 25);
+            this.lblTotalValue.TabIndex = 5;
+            this.lblTotalValue.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label17
+            // 
+            this.label17.BackColor = System.Drawing.Color.Green;
+            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label17.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label17.ForeColor = System.Drawing.Color.White;
+            this.label17.Location = new System.Drawing.Point(72, 53);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(110, 25);
+            this.label17.TabIndex = 6;
+            this.label17.Text = "æœªæŒ¯åˆ†ç´”åˆ©ç›Š";
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label9
+            // 
+            this.label9.BackColor = System.Drawing.Color.Black;
+            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label9.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label9.ForeColor = System.Drawing.Color.White;
+            this.label9.Location = new System.Drawing.Point(379, 3);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(110, 25);
+            this.label9.TabIndex = 0;
+            this.label9.Text = "å½“æœŸçµŒé�Žçµ¦ä¸Ž";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblPayroll
+            // 
+            this.lblPayroll.BackColor = System.Drawing.Color.White;
+            this.lblPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPayroll.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblPayroll.ForeColor = System.Drawing.Color.Black;
+            this.lblPayroll.Location = new System.Drawing.Point(489, 3);
+            this.lblPayroll.Name = "lblPayroll";
+            this.lblPayroll.Size = new System.Drawing.Size(140, 25);
+            this.lblPayroll.TabIndex = 0;
+            this.lblPayroll.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label15
+            // 
+            this.label15.BackColor = System.Drawing.Color.DarkSeaGreen;
+            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label15.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label15.ForeColor = System.Drawing.Color.DarkRed;
+            this.label15.Location = new System.Drawing.Point(686, 3);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(110, 25);
+            this.label15.TabIndex = 4;
+            this.label15.Text = "çµŒé�Žçµ¦ä¸Žå·®é¡�";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblCalcValue1
+            // 
+            this.lblCalcValue1.BackColor = System.Drawing.Color.White;
+            this.lblCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCalcValue1.ForeColor = System.Drawing.Color.Black;
+            this.lblCalcValue1.Location = new System.Drawing.Point(182, 3);
+            this.lblCalcValue1.Name = "lblCalcValue1";
+            this.lblCalcValue1.Size = new System.Drawing.Size(140, 25);
+            this.lblCalcValue1.TabIndex = 1;
+            this.lblCalcValue1.Text = "-999,999,999";
+            this.lblCalcValue1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label10
+            // 
+            this.label10.BackColor = System.Drawing.Color.Blue;
+            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label10.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label10.ForeColor = System.Drawing.Color.White;
+            this.label10.Location = new System.Drawing.Point(72, 3);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(110, 25);
+            this.label10.TabIndex = 0;
+            this.label10.Text = "æŒ¯åˆ†æ¸ˆçµ¦ä¸Ž";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // FrmConstructionLedgerList
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -866,10 +924,10 @@
             this.SizeChanged += new System.EventHandler(this.FrmConstructionLedgerList_SizeChanged);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionLedgerList_KeyDown);
             this.groupBox1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.pnlPayroll.ResumeLayout(false);
             this.pnlPayroll.PerformLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -889,20 +947,7 @@
         private System.Windows.Forms.Label label2;
         private System.Windows.Forms.ComboBox cmbDepartment;
         private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.Panel pnlPayroll;
-        private System.Windows.Forms.Label label9;
-        private System.Windows.Forms.Label lblPayroll;
-        private System.Windows.Forms.Label label6;
-        private System.Windows.Forms.Label lblCalcValue3;
-        private System.Windows.Forms.Label label17;
-        private System.Windows.Forms.Label lblTotalValue;
-        private System.Windows.Forms.Label label15;
-        private System.Windows.Forms.Label label13;
-        private System.Windows.Forms.Label label12;
-        private System.Windows.Forms.Label lblCalcValue1;
         private System.Windows.Forms.Label lblCellTotal;
-        private System.Windows.Forms.Label lblCalcValue2;
-        private System.Windows.Forms.Label label20;
         private System.Windows.Forms.ProgressBar ProgressBar;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
@@ -919,17 +964,34 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.Panel pnlPayroll;
+        private System.Windows.Forms.Label lblEndDate;
+        private System.Windows.Forms.Label lblStartDate;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label lblTotalCalcValue2;
+        private System.Windows.Forms.Label label23;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.Label lblTotalCalcValue1;
+        private System.Windows.Forms.Label label19;
+        private System.Windows.Forms.Label lblPlusorMinus2;
         private System.Windows.Forms.Label label16;
         private System.Windows.Forms.Label lblPlusorMinus1;
         private System.Windows.Forms.Label lblTotalCalcValue;
+        private System.Windows.Forms.Label label12;
         private System.Windows.Forms.Label label22;
         private System.Windows.Forms.Label lblTotalValue2;
         private System.Windows.Forms.Label label14;
-        private System.Windows.Forms.Label lblTotalCalcValue2;
-        private System.Windows.Forms.Label label23;
-        private System.Windows.Forms.Label label11;
-        private System.Windows.Forms.Label lblTotalCalcValue1;
-        private System.Windows.Forms.Label label19;
-        private System.Windows.Forms.Label lblPlusorMinus2;
+        private System.Windows.Forms.Label lblCalcValue2;
+        private System.Windows.Forms.Label label20;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.Label lblCalcValue3;
+        private System.Windows.Forms.Label lblTotalValue;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label lblPayroll;
+        private System.Windows.Forms.Label label15;
+        private System.Windows.Forms.Label lblCalcValue1;
+        private System.Windows.Forms.Label label10;
     }
 }
\ No newline at end of file
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 20)
@@ -73,6 +73,8 @@
         {
             try
             {
+                DataGridView dgv = dgvMaster;
+
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 // Œ»�Ý�Ý’è’lƒNƒŠƒA
                 ClsExcute.ClearSaveParameter(NowPoint);
@@ -83,6 +85,11 @@
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbDepartment.SelectedValue));
                 // ŒŸ�õ’S“–ŽÒ
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue));
+                // •\Ž¦�æ“ª�s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.FirstDisplayedScrollingRowIndex);
+                // Œ»�Ý“ª�s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.CurrentRow.Index);
+
                 // ƒ\�[ƒg�ó‘Ô
                 if (dgvMaster.SortedColumn != null)
                 {
@@ -95,7 +102,7 @@
                 // ‘I‘ð�HŽ–”Ô�†ƒZƒbƒg
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(para_ConstructionCode);
                 
-                // •”��‘ä’ ˆê——‚æ‚è‚Ì‹N“®
+                // •”��‘ä’ ˆê——‚æ‚è‚Ì‹N“®‚Í’¼�ÚŽ©ƒvƒ�ƒZƒX‚ð‹N“®‚·‚é
                 if (!m_FirstStartFlg)
                 {
                     ClsExcute.ProcessExecuteNo_ConstructionLedger(ClsExcute.ProcControlPara[NowPoint]);
@@ -115,6 +122,11 @@
                     // ‰æ–ÊƒNƒ��[ƒY
                     this.Close();
                 }
+                else
+                {
+                    // ƒf�[ƒ^�Ä•\Ž¦
+                    InitDataLoad();
+                }
             }
         }
         #endregion
@@ -239,11 +251,11 @@
         {
             try
             {
-                m_initDataLoad = true;
+                DataGridView dgv = dgvMaster;
 
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 // �‰Šú•\Ž¦Žž‚É‘¼‚Ì‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ��[ƒ^‚ª‚ ‚Á‚½�ê�‡
-                if (!m_FirstStartFlg)
+                if (!m_FirstStartFlg && m_initDataLoad)
                 {
                     // ”N“x
                     numUDConstPro.Value = m_FirstStartPeriod;
@@ -263,8 +275,8 @@
                     // •”���E’S“–ŽÒ
                     if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 0)
                     {
+                        cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
                         cmbConstructionPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
-                        cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
                     }
                 }
                 // ˆê”ÊŽg—pŽÒ‚Í‹‹—^‚Ì—“‚ªŒ©‚¦‚È‚¢‚æ‚¤‚É‚·‚é
@@ -276,6 +288,25 @@
 
                 // ƒf�[ƒ^•\Ž¦
                 DataDisplay();
+
+                // •\Ž¦�æ“ª�s
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 3)
+                {
+                    dgv.FirstDisplayedScrollingRowIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+
+                    // Œ»�Ý“ª�s
+                    dgv.Rows[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[3]].Selected = true;
+                }
+                // ƒ\�[ƒg�ó‘Ô
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 4)
+                {
+                    // ƒJƒ‰ƒ€Žæ“¾
+                    DataGridViewColumn wrksortcolumn = dgv.Columns[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[4]];
+                    // ƒ\�[ƒgƒI�[ƒ_�[Žæ“¾
+                    ListSortDirection sortDirection = ((SortOrder)ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[5]) == SortOrder.Ascending ?
+                                                                        ListSortDirection.Ascending : ListSortDirection.Descending;
+                    dgv.Sort(wrksortcolumn, sortDirection);
+                }
             }
             catch (Exception ex)
             {
@@ -520,6 +551,7 @@
             try
             {
                 DataGridView dgv = dgvMaster;
+                if (CurrentRow >= dgv.RowCount) return;
                 DataGridViewRow CurRow = dgv.Rows[CurrentRow];
 
                 Color SetBackColor = Color.White;
@@ -670,6 +702,7 @@
                 int ExpensesCnt = dgv.Rows.Add(1);
                 // Œo”ï–¼�Ì
                 dgv.Rows[ExpensesCnt].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.Expenses];
+                dgv.Rows[ExpensesCnt].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                 // ‹àŠzƒZƒbƒg
                 dgv.Rows[ExpensesCnt].Cells[(int)DispColumn.TotalPayment].Value = SumData.ToString("#,0");
                 // �s‚Ì�F‚ð•Ï‚¦‚é
@@ -736,6 +769,7 @@
                 int AuxiliaryCnt = dgv.Rows.Add(1);
                 // Œo”ï–¼�Ì
                 dgv.Rows[AuxiliaryCnt].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.Auxiliary];
+                dgv.Rows[AuxiliaryCnt].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                 // ‹àŠzƒZƒbƒg
                 dgv.Rows[AuxiliaryCnt].Cells[(int)DispColumn.GrossProfit].Value = SumData.ToString("#,0");
                 // �s‚Ì�F‚ð•Ï‚¦‚é
@@ -877,7 +911,7 @@
         /// <param name="DepartmentCode">•”��ƒR�[ƒh</param>
         /// <param name="PersonCodeList">’S“–ŽÒƒR�[ƒhˆê——</param>
         /// <returns>ƒf�[ƒ^Œ��”</returns>
-        private int GetPersonInDepartment(ref List<int> PersonCodeList, ref List<DateTime> dtStartList, ref List<DateTime> dtCompList, ref List<int> MonthSalaryList)
+        private int GetPersonInDepartment(ref List<int> PersonCodeList, ref List<DateTime> dtStartList, ref List<DateTime> dtCompList, ref List<DateTime> dtMaxComp, ref List<int> MonthSalaryList)
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
@@ -954,6 +988,7 @@
 
                 DateTime stDate = dtDefaultStart;
                 DateTime edDate = dtDefaultEnd;
+                DateTime maxDate = dtDefaultEnd;
                 foreach (object[] objRec in arList)
                 {
                     // ’S“–ŽÒƒR�[ƒh‚ðŽæ“¾‚·‚é
@@ -968,6 +1003,13 @@
                     if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
 
                     // �Å‘å‚Ì�I—¹“ú‚ðŽæ“¾‚·‚é
+                    maxDate = dtDefaultEnd;
+                    wrkDate = CommonMotions.cnvDate(objRec[(int)GetPersonTerm.MainEnd1]).Date;
+                    if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+                    wrkDate = CommonMotions.cnvDate(objRec[(int)GetPersonTerm.MainEnd2]).Date;
+                    if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+
+                    // ŒvŽZ‚Ì�I—¹“ú‚ðŽæ“¾‚·‚é
                     edDate = dtDefaultEnd;
                     // ŒŽŠz‹‹—^‚ðŽæ“¾‚·‚é
                     int Salary = CommonMotions.cnvInt(objRec[(int)GetPersonTerm.MonthlySalary]);
@@ -975,6 +1017,7 @@
                     PersonCodeList.Add(Person);     // ’S“–ŽÒƒR�[ƒh
                     dtStartList.Add(stDate);        // ŠJŽn“ú
                     dtCompList.Add(edDate);         // �I—¹“ú
+                    dtMaxComp.Add(maxDate);         // �Å‘å�I—¹“ú
                     MonthSalaryList.Add(Salary);    // ‹‹—^‹àŠz
                 }
                 return arList.Count;
@@ -1338,6 +1381,7 @@
                     // �‡Œv�s•\Ž¦
                     int TotalRow = dgv.Rows.Add(1);
                     dgv.Rows[TotalRow].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.Execution];
+                    dgv.Rows[TotalRow].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                     // �s‚Ì�F‚ð•Ï‚¦‚é
                     SetRowColor(dgv.Rows[TotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
 
@@ -1381,6 +1425,7 @@
                     //dgv.Rows.Add();       // ‹ó�s
                     int CompTotalRow = dgv.Rows.Add(1);
                     dgv.Rows[CompTotalRow].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.Completed];
+                    dgv.Rows[CompTotalRow].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                     // �s‚Ì�F‚ð•Ï‚¦‚é
                     SetRowColor(dgv.Rows[CompTotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
                     // �”’l•\Ž¦
@@ -1401,6 +1446,7 @@
                     //dgv.Rows.Add();       // ‹ó�s
                     int TotalRow = dgv.Rows.Add(1);
                     dgv.Rows[TotalRow].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.AllConstrutions];
+                    dgv.Rows[TotalRow].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                     // �s‚Ì�F‚ð•Ï‚¦‚é
                     SetRowColor(dgv.Rows[TotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
                     // �”’l•\Ž¦
@@ -1419,8 +1465,9 @@
                 List<int> PersonCDArray = new List<int>();
                 List<DateTime> dtStartArray = new List<DateTime>();
                 List<DateTime> dtCompArray = new List<DateTime>();
+                List<DateTime> dtMaxCompArray = new List<DateTime>();
                 List<int> SalaryArray = new List<int>();
-                GetPersonInDepartment(ref PersonCDArray, ref dtStartArray, ref dtCompArray, ref SalaryArray);
+                GetPersonInDepartment(ref PersonCDArray, ref dtStartArray, ref dtCompArray, ref dtMaxCompArray, ref SalaryArray);
 
                 // ProgressBar‚Ì’l‚ð•Ï�X‚·‚é
                 prgber.Value++;
@@ -1427,7 +1474,7 @@
                 prgber.Update();
 
                 // ----- Œo‰ß‹‹—^•\Ž¦�iƒwƒbƒ_�[‚É•\Ž¦�j
-                SetPayrollData(PersonCDArray, dtStartArray, dtCompArray, SalaryArray);
+                SetPayrollData(PersonCDArray, dtStartArray, dtCompArray, SalaryArray, dtMaxCompArray);
 
                 // ----- Œo”ï‚ð•\Ž¦‚·‚é
                 int Expenses = SetOtherCost(PersonCDArray, dtStartArray, dtCompArray);
@@ -1455,6 +1502,7 @@
                 dgv.Rows.Add();       // ‹ó�s
                 int AllTotalRow = dgv.Rows.Add(1);
                 dgv.Rows[AllTotalRow].Cells[(int)DispColumn.SelectionName].Value = s_TotalTitleArray[(int)RowTitleNum.AllTotal];
+                dgv.Rows[AllTotalRow].Cells[(int)DispColumn.SelectionName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
 
                 // �s‚Ì�F‚ð•Ï‚¦‚é
                 SetRowColor(dgv.Rows[AllTotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
@@ -1682,7 +1730,6 @@
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             try
             {
-                m_initDataLoad = true;
                 cmbConstructionPerson.DataSource = null;
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
@@ -1714,6 +1761,9 @@
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
 
+                // ƒZƒbƒg‘O‚ÉƒCƒxƒ“ƒgƒXƒgƒbƒv
+                m_initDataLoad = true;
+
                 foreach (object[] work in arList)
                 {
                     KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0]), CommonMotions.cnvString(work[1]));
@@ -1929,7 +1979,7 @@
         /// <param name="dtStartArray"></param>
         /// <param name="dtCompArray"></param>
         /// <param name="SalaryArray"></param>
-        private void SetPayrollData(List<int> PersonCDArray, List<DateTime> dtStartArray, List<DateTime> dtCompArray, List<int> SalaryArray)
+        private void SetPayrollData(List<int> PersonCDArray, List<DateTime> dtStartArray, List<DateTime> dtCompArray, List<int> SalaryArray, List<DateTime> dtMaxCompArray)
         {
             try
             {
@@ -1948,6 +1998,9 @@
 
                 DateTime dtStart = DateTime.MinValue;
                 DateTime dtEnd = DateTime.MinValue;
+                DateTime dtMax = DateTime.MaxValue;
+                DateTime dtDispStart = DateTime.MaxValue;
+                DateTime dtDispComplate = DateTime.MinValue;
                 // ‹‹—^‚ð�WŒv‚·‚é
                 for (int i = 0; i < PersonCDArray.Count; i++)
                 {
@@ -1958,6 +2011,9 @@
                     // �I—¹“úŽæ“¾
                     dtEnd = dtCompArray[i];
                     if (dtEnd == DateTime.MinValue) dtEnd = dtDefaultEnd;
+                    // �Å‘å“úŽæ“¾
+                    dtMax = dtMaxCompArray[i];
+                    if (dtMax == DateTime.MinValue) dtMax = dtDefaultEnd;
 
                     // ‹‹—^—Ý�ÏŽæ“¾
                     int workSalary = CalcElapsedSalary(dtStart, dtEnd, PersonCDArray[i], SalaryArray[i]);
@@ -1964,6 +2020,9 @@
                     // —ÝŒv‰ÁŽZ
                     if (workSalary > 0) TotalSalary += workSalary;
 
+                    // ŒvŽZŠJŽn�I—¹“ú‚ðŽæ“¾‚·‚é
+                    if (dtStart < dtDispStart) dtDispStart = dtStart;
+                    if (dtDispComplate < dtMax) dtDispComplate = dtMax;
                 }
 
                 // �U•ª‹‹—^‹àŠz�E�ƒ—˜‰v‹àŠz�E‘e—˜‰v‹àŠzŽæ“¾
@@ -1994,6 +2053,10 @@
                 // “–Šú�ƒ—˜‰vŒvŽZ
                 int CalcTotal = NonSalary + CalcTotal1;
                 lblTotalCalcValue.Text = CalcTotal.ToString("#,0");
+
+                // ‹‹—^ŒvŽZŠJŽn“ú�E�I—¹“ú
+                lblStartDate.Text = dtDispStart.ToShortDateString();
+                lblEndDate.Text = dtDispComplate.ToShortDateString();
             }
             catch (Exception ex)
             {
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 20)
@@ -299,16 +299,14 @@
                 strSQL += ", E.PERSONNAME";
                 strSQL += ", F.PERSONNAME";
                 strSQL += " FROM ConstructionBaseInfo A";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER E ON A.SalesPersonCode = E.PersonCode";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER F ON A.ConstructionPersonCode = F.PersonCode";
                 strSQL += " , ConstructionBaseInfoDetail B";
                 strSQL += " , PERSONINCHARGEMASTER D";
-                strSQL += " , PERSONINCHARGEMASTER E";
-                strSQL += " , PERSONINCHARGEMASTER F";
                 strSQL += " WHERE (A.ConstructionCode = B.ConstructionCode";
                 strSQL += string.Format(" AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
                 strSQL += " AND (A.SalesPersonCode = D.PersonCode OR A.ConstructionPersonCode = D.PersonCode";
                 strSQL += " OR A.ConstrSubPersonCode = D.PersonCode OR A.ConstructionInstructor = D.PersonCode)";
-                strSQL += " AND A.SalesPersonCode = E.PersonCode";
-                strSQL += " AND A.ConstructionPersonCode = F.PersonCode";
 
                 List<int> paraList = new List<int>();
                 bool paraSw = false;
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs	(revision 20)
@@ -88,6 +88,10 @@
             this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.lblStartDate = new System.Windows.Forms.Label();
+            this.lblEndDate = new System.Windows.Forms.Label();
             this.groupBox1.SuspendLayout();
             this.pnlPayroll.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
@@ -141,8 +145,12 @@
             // 
             // pnlPayroll
             // 
-            this.pnlPayroll.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.pnlPayroll.BackColor = System.Drawing.Color.LightSteelBlue;
             this.pnlPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.pnlPayroll.Controls.Add(this.lblEndDate);
+            this.pnlPayroll.Controls.Add(this.lblStartDate);
+            this.pnlPayroll.Controls.Add(this.label8);
+            this.pnlPayroll.Controls.Add(this.label3);
             this.pnlPayroll.Controls.Add(this.lblTotalCalcValue2);
             this.pnlPayroll.Controls.Add(this.label23);
             this.pnlPayroll.Controls.Add(this.label11);
@@ -178,7 +186,7 @@
             this.lblTotalCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblTotalCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblTotalCalcValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue2.Location = new System.Drawing.Point(643, 53);
+            this.lblTotalCalcValue2.Location = new System.Drawing.Point(489, 53);
             this.lblTotalCalcValue2.Name = "lblTotalCalcValue2";
             this.lblTotalCalcValue2.Size = new System.Drawing.Size(140, 25);
             this.lblTotalCalcValue2.TabIndex = 52;
@@ -190,7 +198,7 @@
             this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label23.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label23.ForeColor = System.Drawing.Color.White;
-            this.label23.Location = new System.Drawing.Point(533, 53);
+            this.label23.Location = new System.Drawing.Point(379, 53);
             this.label23.Name = "label23";
             this.label23.Size = new System.Drawing.Size(110, 25);
             this.label23.TabIndex = 51;
@@ -200,12 +208,12 @@
             // label11
             // 
             this.label11.AutoSize = true;
-            this.label11.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label11.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label11.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.label11.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label11.ForeColor = System.Drawing.Color.Black;
-            this.label11.Location = new System.Drawing.Point(807, 25);
+            this.label11.Location = new System.Drawing.Point(645, 34);
             this.label11.Name = "label11";
-            this.label11.Size = new System.Drawing.Size(42, 31);
+            this.label11.Size = new System.Drawing.Size(25, 16);
             this.label11.TabIndex = 48;
             this.label11.Text = "ï¼�";
             this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -216,7 +224,7 @@
             this.lblTotalCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblTotalCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblTotalCalcValue1.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue1.Location = new System.Drawing.Point(983, 28);
+            this.lblTotalCalcValue1.Location = new System.Drawing.Point(796, 28);
             this.lblTotalCalcValue1.Name = "lblTotalCalcValue1";
             this.lblTotalCalcValue1.Size = new System.Drawing.Size(140, 25);
             this.lblTotalCalcValue1.TabIndex = 50;
@@ -228,7 +236,7 @@
             this.label19.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label19.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label19.ForeColor = System.Drawing.Color.White;
-            this.label19.Location = new System.Drawing.Point(873, 28);
+            this.label19.Location = new System.Drawing.Point(686, 28);
             this.label19.Name = "label19";
             this.label19.Size = new System.Drawing.Size(110, 25);
             this.label19.TabIndex = 49;
@@ -238,12 +246,12 @@
             // lblPlusorMinus2
             // 
             this.lblPlusorMinus2.AutoSize = true;
-            this.lblPlusorMinus2.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.lblPlusorMinus2.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lblPlusorMinus2.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.lblPlusorMinus2.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblPlusorMinus2.ForeColor = System.Drawing.Color.Black;
-            this.lblPlusorMinus2.Location = new System.Drawing.Point(471, 52);
+            this.lblPlusorMinus2.Location = new System.Drawing.Point(338, 59);
             this.lblPlusorMinus2.Name = "lblPlusorMinus2";
-            this.lblPlusorMinus2.Size = new System.Drawing.Size(35, 27);
+            this.lblPlusorMinus2.Size = new System.Drawing.Size(25, 16);
             this.lblPlusorMinus2.TabIndex = 47;
             this.lblPlusorMinus2.Text = "ï¼‹";
             this.lblPlusorMinus2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -251,12 +259,12 @@
             // label16
             // 
             this.label16.AutoSize = true;
-            this.label16.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label16.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label16.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.label16.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label16.ForeColor = System.Drawing.Color.Black;
-            this.label16.Location = new System.Drawing.Point(807, 50);
+            this.label16.Location = new System.Drawing.Point(645, 59);
             this.label16.Name = "label16";
-            this.label16.Size = new System.Drawing.Size(42, 31);
+            this.label16.Size = new System.Drawing.Size(25, 16);
             this.label16.TabIndex = 31;
             this.label16.Text = "ï¼�";
             this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -264,12 +272,12 @@
             // lblPlusorMinus1
             // 
             this.lblPlusorMinus1.AutoSize = true;
-            this.lblPlusorMinus1.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.lblPlusorMinus1.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lblPlusorMinus1.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.lblPlusorMinus1.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblPlusorMinus1.ForeColor = System.Drawing.Color.Black;
-            this.lblPlusorMinus1.Location = new System.Drawing.Point(471, 27);
+            this.lblPlusorMinus1.Location = new System.Drawing.Point(338, 34);
             this.lblPlusorMinus1.Name = "lblPlusorMinus1";
-            this.lblPlusorMinus1.Size = new System.Drawing.Size(35, 27);
+            this.lblPlusorMinus1.Size = new System.Drawing.Size(25, 16);
             this.lblPlusorMinus1.TabIndex = 31;
             this.lblPlusorMinus1.Text = "ï¼‹";
             this.lblPlusorMinus1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -280,7 +288,7 @@
             this.lblTotalCalcValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblTotalCalcValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblTotalCalcValue.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalCalcValue.Location = new System.Drawing.Point(983, 53);
+            this.lblTotalCalcValue.Location = new System.Drawing.Point(796, 53);
             this.lblTotalCalcValue.Name = "lblTotalCalcValue";
             this.lblTotalCalcValue.Size = new System.Drawing.Size(140, 25);
             this.lblTotalCalcValue.TabIndex = 33;
@@ -289,12 +297,12 @@
             // label12
             // 
             this.label12.AutoSize = true;
-            this.label12.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label12.Font = new System.Drawing.Font("Myriad Web Pro", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label12.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.label12.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label12.ForeColor = System.Drawing.Color.Black;
-            this.label12.Location = new System.Drawing.Point(471, 2);
+            this.label12.Location = new System.Drawing.Point(338, 7);
             this.label12.Name = "label12";
-            this.label12.Size = new System.Drawing.Size(35, 27);
+            this.label12.Size = new System.Drawing.Size(25, 16);
             this.label12.TabIndex = 2;
             this.label12.Text = "ï¼�";
             this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -305,7 +313,7 @@
             this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label22.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label22.ForeColor = System.Drawing.Color.Yellow;
-            this.label22.Location = new System.Drawing.Point(873, 53);
+            this.label22.Location = new System.Drawing.Point(686, 53);
             this.label22.Name = "label22";
             this.label22.Size = new System.Drawing.Size(110, 25);
             this.label22.TabIndex = 32;
@@ -318,7 +326,7 @@
             this.lblTotalValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblTotalValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblTotalValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalValue2.Location = new System.Drawing.Point(643, 28);
+            this.lblTotalValue2.Location = new System.Drawing.Point(489, 28);
             this.lblTotalValue2.Name = "lblTotalValue2";
             this.lblTotalValue2.Size = new System.Drawing.Size(140, 25);
             this.lblTotalValue2.TabIndex = 33;
@@ -330,7 +338,7 @@
             this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label14.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label14.ForeColor = System.Drawing.Color.DarkRed;
-            this.label14.Location = new System.Drawing.Point(533, 28);
+            this.label14.Location = new System.Drawing.Point(379, 28);
             this.label14.Name = "label14";
             this.label14.Size = new System.Drawing.Size(110, 25);
             this.label14.TabIndex = 32;
@@ -343,7 +351,7 @@
             this.lblCalcValue2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblCalcValue2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblCalcValue2.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue2.Location = new System.Drawing.Point(303, 28);
+            this.lblCalcValue2.Location = new System.Drawing.Point(182, 28);
             this.lblCalcValue2.Name = "lblCalcValue2";
             this.lblCalcValue2.Size = new System.Drawing.Size(140, 25);
             this.lblCalcValue2.TabIndex = 46;
@@ -355,7 +363,7 @@
             this.label20.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label20.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label20.ForeColor = System.Drawing.Color.White;
-            this.label20.Location = new System.Drawing.Point(193, 28);
+            this.label20.Location = new System.Drawing.Point(72, 28);
             this.label20.Name = "label20";
             this.label20.Size = new System.Drawing.Size(110, 25);
             this.label20.TabIndex = 11;
@@ -365,12 +373,12 @@
             // label13
             // 
             this.label13.AutoSize = true;
-            this.label13.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label13.Font = new System.Drawing.Font("Myriad Web Pro", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label13.BackColor = System.Drawing.Color.LightSteelBlue;
+            this.label13.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label13.ForeColor = System.Drawing.Color.Black;
-            this.label13.Location = new System.Drawing.Point(807, 0);
+            this.label13.Location = new System.Drawing.Point(645, 7);
             this.label13.Name = "label13";
-            this.label13.Size = new System.Drawing.Size(42, 31);
+            this.label13.Size = new System.Drawing.Size(25, 16);
             this.label13.TabIndex = 3;
             this.label13.Text = "ï¼�";
             this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -381,7 +389,7 @@
             this.lblCalcValue3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblCalcValue3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblCalcValue3.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue3.Location = new System.Drawing.Point(303, 53);
+            this.lblCalcValue3.Location = new System.Drawing.Point(182, 53);
             this.lblCalcValue3.Name = "lblCalcValue3";
             this.lblCalcValue3.Size = new System.Drawing.Size(140, 25);
             this.lblCalcValue3.TabIndex = 7;
@@ -393,7 +401,7 @@
             this.lblTotalValue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblTotalValue.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblTotalValue.ForeColor = System.Drawing.Color.Black;
-            this.lblTotalValue.Location = new System.Drawing.Point(983, 3);
+            this.lblTotalValue.Location = new System.Drawing.Point(796, 3);
             this.lblTotalValue.Name = "lblTotalValue";
             this.lblTotalValue.Size = new System.Drawing.Size(140, 25);
             this.lblTotalValue.TabIndex = 5;
@@ -405,7 +413,7 @@
             this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label17.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label17.ForeColor = System.Drawing.Color.White;
-            this.label17.Location = new System.Drawing.Point(193, 53);
+            this.label17.Location = new System.Drawing.Point(72, 53);
             this.label17.Name = "label17";
             this.label17.Size = new System.Drawing.Size(110, 25);
             this.label17.TabIndex = 6;
@@ -418,7 +426,7 @@
             this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label6.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label6.ForeColor = System.Drawing.Color.White;
-            this.label6.Location = new System.Drawing.Point(533, 3);
+            this.label6.Location = new System.Drawing.Point(379, 3);
             this.label6.Name = "label6";
             this.label6.Size = new System.Drawing.Size(110, 25);
             this.label6.TabIndex = 0;
@@ -431,7 +439,7 @@
             this.lblPayroll.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblPayroll.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblPayroll.ForeColor = System.Drawing.Color.Black;
-            this.lblPayroll.Location = new System.Drawing.Point(643, 3);
+            this.lblPayroll.Location = new System.Drawing.Point(489, 3);
             this.lblPayroll.Name = "lblPayroll";
             this.lblPayroll.Size = new System.Drawing.Size(140, 25);
             this.lblPayroll.TabIndex = 0;
@@ -443,7 +451,7 @@
             this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label15.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label15.ForeColor = System.Drawing.Color.DarkRed;
-            this.label15.Location = new System.Drawing.Point(873, 3);
+            this.label15.Location = new System.Drawing.Point(686, 3);
             this.label15.Name = "label15";
             this.label15.Size = new System.Drawing.Size(110, 25);
             this.label15.TabIndex = 4;
@@ -456,7 +464,7 @@
             this.lblCalcValue1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblCalcValue1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblCalcValue1.ForeColor = System.Drawing.Color.Black;
-            this.lblCalcValue1.Location = new System.Drawing.Point(303, 3);
+            this.lblCalcValue1.Location = new System.Drawing.Point(182, 3);
             this.lblCalcValue1.Name = "lblCalcValue1";
             this.lblCalcValue1.Size = new System.Drawing.Size(140, 25);
             this.lblCalcValue1.TabIndex = 1;
@@ -469,7 +477,7 @@
             this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label9.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label9.ForeColor = System.Drawing.Color.White;
-            this.label9.Location = new System.Drawing.Point(193, 3);
+            this.label9.Location = new System.Drawing.Point(72, 3);
             this.label9.Name = "label9";
             this.label9.Size = new System.Drawing.Size(110, 25);
             this.label9.TabIndex = 0;
@@ -754,6 +762,56 @@
             this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column12.Width = 140;
             // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.Ivory;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(994, 3);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(110, 25);
+            this.label3.TabIndex = 53;
+            this.label3.Text = "çµ¦ä¸Žè¨ˆç®—é–‹å§‹æ—¥";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label8
+            // 
+            this.label8.BackColor = System.Drawing.Color.Ivory;
+            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label8.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label8.ForeColor = System.Drawing.Color.Black;
+            this.label8.Location = new System.Drawing.Point(994, 28);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(110, 25);
+            this.label8.TabIndex = 53;
+            this.label8.Text = "çµ¦ä¸Žè¨ˆç®—çµ‚äº†æ—¥";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblStartDate
+            // 
+            this.lblStartDate.BackColor = System.Drawing.Color.White;
+            this.lblStartDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblStartDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblStartDate.ForeColor = System.Drawing.Color.Black;
+            this.lblStartDate.Location = new System.Drawing.Point(1104, 3);
+            this.lblStartDate.Name = "lblStartDate";
+            this.lblStartDate.Size = new System.Drawing.Size(140, 25);
+            this.lblStartDate.TabIndex = 54;
+            this.lblStartDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblEndDate
+            // 
+            this.lblEndDate.BackColor = System.Drawing.Color.White;
+            this.lblEndDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblEndDate.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblEndDate.ForeColor = System.Drawing.Color.Black;
+            this.lblEndDate.Location = new System.Drawing.Point(1104, 28);
+            this.lblEndDate.Name = "lblEndDate";
+            this.lblEndDate.Size = new System.Drawing.Size(140, 25);
+            this.lblEndDate.TabIndex = 54;
+            this.lblEndDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
             // FrmDepExpenssList
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -837,5 +895,9 @@
         private System.Windows.Forms.Label label15;
         private System.Windows.Forms.Label lblCalcValue1;
         private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label lblEndDate;
+        private System.Windows.Forms.Label lblStartDate;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label3;
     }
 }
\ No newline at end of file
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 20)
@@ -164,9 +164,12 @@
                 FrmConstructionLedgerList frm = (FrmConstructionLedgerList)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
 
                 // ƒnƒ“ƒhƒ‹ƒNƒŠƒA
-                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
-                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
-                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                if (ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle != null)
+                {
+                    ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                    ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                    ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                }
 
                 // ‹N“®ƒpƒ‰ƒ�ƒ^ƒNƒŠƒA
                 int NowPoint = ClsExcute.GetNowProcessPoint();
@@ -514,7 +517,7 @@
                 if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
-                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, "�@‘S�@ŽÐ�@"));
 
                 foreach (object[] work in arList)
                 {
@@ -673,6 +676,7 @@
             try
             {
                 DataGridView dgv = dgvMaster;
+                if (CurrentRow >= dgv.RowCount) return;
                 DataGridViewRow CurRow = dgv.Rows[CurrentRow];
 
                 Color SetBackColor = Color.White;
@@ -841,7 +845,7 @@
         /// <returns>ƒf�[ƒ^Œ��”</returns>
         private int GetPersonInDepartment(ref List<int> DepartmentList, ref List<int> PersonCode,
                                             ref List<DateTime> dtStart, ref List<DateTime> dtComp,
-                                            ref List<int> MonthSalary)
+                                            ref List<DateTime> dtMaxComp, ref List<int> MonthSalary)
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
@@ -913,6 +917,7 @@
 
                 DateTime stDate = dtDefaultStart;
                 DateTime edDate = dtDefaultEnd;
+                DateTime maxDate = dtDefaultEnd;
                 foreach (object[] objRec in arList)
                 {
                     // •”��ƒR�[ƒh‚ðŽæ“¾‚·‚é
@@ -929,6 +934,13 @@
                     if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
 
                     // �Å‘å‚Ì�I—¹“ú‚ðŽæ“¾‚·‚é
+                    maxDate = dtDefaultEnd;
+                    wrkDate = CommonMotions.cnvDate(objRec[(int)GetPersonTerm.MainEnd1]).Date;
+                    if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+                    wrkDate = CommonMotions.cnvDate(objRec[(int)GetPersonTerm.MainEnd2]).Date;
+                    if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+
+                    // ŒvŽZ‚Ì�I—¹“ú‚ðŽæ“¾‚·‚é
                     edDate = dtDefaultEnd;
                     // ŒŽŠz‹‹—^‚ðŽæ“¾‚·‚é
                     int Salary = CommonMotions.cnvInt(objRec[(int)GetPersonTerm.MonthlySalary]);
@@ -937,6 +949,7 @@
                     PersonCode.Add(Person);             // ’S“–ŽÒƒR�[ƒh
                     dtStart.Add(stDate);                // ŠJŽn“ú
                     dtComp.Add(edDate);                 // �I—¹“ú
+                    dtMaxComp.Add(maxDate);             // �Å‘å�I—¹“ú
                     MonthSalary.Add(Salary);            // ‹‹—^‹àŠz
                 }
                 return arList.Count;
@@ -1195,8 +1208,9 @@
                 List<int> PersonCDArray = new List<int>();
                 List<DateTime> dtStartArray = new List<DateTime>();
                 List<DateTime> dtCompArray = new List<DateTime>();
+                List<DateTime> dtMaxCompArray = new List<DateTime>();
                 List<int> SalaryArray = new List<int>();
-                GetPersonInDepartment(ref DepInPerArray, ref PersonCDArray, ref dtStartArray, ref dtCompArray, ref SalaryArray);
+                GetPersonInDepartment(ref DepInPerArray, ref PersonCDArray, ref dtStartArray, ref dtCompArray, ref dtMaxCompArray, ref SalaryArray);
 
                 // ProgressBar‚Ì’l‚ð•Ï�X‚·‚é
                 prgber.Value++;
@@ -1209,7 +1223,7 @@
 
 
                 // ----- Œo‰ß‹‹—^•\Ž¦�iƒwƒbƒ_�[‚É•\Ž¦�j
-                SetPayrollData(PersonCDArray, dtStartArray, dtCompArray, SalaryArray);
+                SetPayrollData(PersonCDArray, dtStartArray, dtCompArray, SalaryArray, dtMaxCompArray);
 
                 // ProgressBar‚Ì’l‚ð•Ï�X‚·‚é
                 prgber.Value++;
@@ -1484,7 +1498,7 @@
         /// <param name="dtStartArray"></param>
         /// <param name="dtCompArray"></param>
         /// <param name="SalaryArray"></param>
-        private void SetPayrollData(List<int> PersonCDArray, List<DateTime> dtStartArray, List<DateTime> dtCompArray, List<int> SalaryArray)
+        private void SetPayrollData(List<int> PersonCDArray, List<DateTime> dtStartArray, List<DateTime> dtCompArray, List<int> SalaryArray, List<DateTime> dtMaxCompArray)
         {
             try
             {
@@ -1503,6 +1517,9 @@
 
                 DateTime dtStart = DateTime.MinValue;
                 DateTime dtEnd = DateTime.MinValue;
+                DateTime dtMax = DateTime.MaxValue;
+                DateTime dtDispStart = DateTime.MaxValue;
+                DateTime dtDispComplate = DateTime.MinValue;
                 // ‹‹—^‚ð�WŒv‚·‚é
                 for (int i = 0; i < PersonCDArray.Count; i++)
                 {
@@ -1513,6 +1530,9 @@
                     // �I—¹“úŽæ“¾
                     dtEnd = dtCompArray[i];
                     if (dtEnd == DateTime.MinValue) dtEnd = dtDefaultEnd;
+                    // �Å‘å“úŽæ“¾
+                    dtMax = dtMaxCompArray[i];
+                    if (dtMax == DateTime.MinValue) dtMax = dtDefaultEnd;
 
                     // ‹‹—^—Ý�ÏŽæ“¾
                     int workSalary = CalcElapsedSalary(dtStart, dtEnd, PersonCDArray[i], SalaryArray[i]);
@@ -1519,6 +1539,9 @@
                     // —ÝŒv‰ÁŽZ
                     if (workSalary > 0) TotalSalary += workSalary;
 
+                    // ŒvŽZŠJŽn�I—¹“ú‚ðŽæ“¾‚·‚é
+                    if (dtStart < dtDispStart) dtDispStart = dtStart;
+                    if (dtDispComplate < dtMax) dtDispComplate = dtMax;
                 }
 
                 // �U•ª‹‹—^‹àŠz�E�ƒ—˜‰v‹àŠz�E‘e—˜‰v‹àŠzŽæ“¾
@@ -1549,6 +1572,10 @@
                 // “–Šú�ƒ—˜‰vŒvŽZ
                 int CalcTotal = NonSalary + CalcTotal1;
                 lblTotalCalcValue.Text = CalcTotal.ToString("#,0");
+
+                // ‹‹—^ŒvŽZŠJŽn“ú�E�I—¹“ú
+                lblStartDate.Text = dtDispStart.ToShortDateString();
+                lblEndDate.Text = dtDispComplate.ToShortDateString();
             }
             catch (Exception ex)
             {
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs	(revision 20)
@@ -190,6 +190,9 @@
         #endregion
 
         #region è¡¨ç¤ºçŠ¶æ…‹ã‚’å¤‰æ›´ã�™ã‚‹
+        /// <summary>
+        /// è¡¨ç¤ºçŠ¶æ…‹ã‚’å¤‰æ›´ã�™ã‚‹
+        /// </summary>
         private void SetDisplayStyle()
         {
             try
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs	(nonexistent)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs	(revision 20)
@@ -0,0 +1,421 @@
+ï»¿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmPriceOfBudget
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </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 dataGridViewCellStyle13 = 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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.dgvMain = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMain)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(887, 550);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 3;
+            this.btnEnd.Text = "çµ‚ã€€äº†";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.groupBox1.BackColor = System.Drawing.Color.LimeGreen;
+            this.groupBox1.Controls.Add(this.cmbDepartment);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.label1);
+            this.groupBox1.Controls.Add(this.numUDConstPro);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
+            this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.Controls.Add(this.label3);
+            this.groupBox1.Controls.Add(this.label5);
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(7, 5);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(1000, 41);
+            this.groupBox1.TabIndex = 51;
+            this.groupBox1.TabStop = false;
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(422, 11);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 24);
+            this.cmbDepartment.TabIndex = 1;
+            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(294, 10);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 40;
+            this.label4.Text = "æ‹…å½“éƒ¨ç½²";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.PaleGoldenrod;
+            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(20, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(120, 25);
+            this.label1.TabIndex = 38;
+            this.label1.Text = "å–¶æ¥­æœŸ";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.BackColor = System.Drawing.Color.White;
+            this.numUDConstPro.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
+            this.numUDConstPro.Location = new System.Drawing.Point(173, 11);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
+            this.numUDConstPro.TabIndex = 0;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(766, 11);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 24);
+            this.cmbConstructionPerson.TabIndex = 2;
+            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(638, 10);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 25);
+            this.label2.TabIndex = 4;
+            this.label2.Text = "å·¥äº‹æ‹…å½“è€…";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(253, 14);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(25, 16);
+            this.label3.TabIndex = 0;
+            this.label3.Text = "æœŸ";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(148, 14);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(25, 16);
+            this.label5.TabIndex = 0;
+            this.label5.Text = "ç¬¬";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvMain
+            // 
+            this.dgvMain.AllowUserToAddRows = false;
+            this.dgvMain.AllowUserToDeleteRows = false;
+            this.dgvMain.AllowUserToResizeColumns = false;
+            this.dgvMain.AllowUserToResizeRows = false;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMain.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMain.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvMain.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMain.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("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold);
+            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.dgvMain.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMain.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMain.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.Column14,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn3,
+            this.dataGridViewTextBoxColumn4,
+            this.Column15,
+            this.dataGridViewTextBoxColumn5,
+            this.dataGridViewTextBoxColumn6,
+            this.Column7,
+            this.Column8});
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle13.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMain.DefaultCellStyle = dataGridViewCellStyle13;
+            this.dgvMain.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMain.Location = new System.Drawing.Point(7, 50);
+            this.dgvMain.Name = "dgvMain";
+            this.dgvMain.RowHeadersVisible = false;
+            this.dgvMain.RowHeadersWidth = 20;
+            this.dgvMain.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMain.RowTemplate.Height = 21;
+            this.dgvMain.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMain.Size = new System.Drawing.Size(1000, 496);
+            this.dgvMain.TabIndex = 52;
+            this.dgvMain.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMain_CellDoubleClick);
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle3;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "â„–";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 50;
+            // 
+            // Column14
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column14.Frozen = true;
+            this.Column14.HeaderText = "éƒ¨ç½²";
+            this.Column14.Name = "Column14";
+            this.Column14.ReadOnly = true;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle5;
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "æ‹…å½“è€…å��";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle6;
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "å·¥äº‹ã‚³ãƒ¼ãƒ‰";
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Visible = false;
+            this.dataGridViewTextBoxColumn3.Width = 5;
+            // 
+            // dataGridViewTextBoxColumn4
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ï¼­ï¼³ ï¼°æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle7;
+            this.dataGridViewTextBoxColumn4.Frozen = true;
+            this.dataGridViewTextBoxColumn4.HeaderText = "å·¥ã€€äº‹ã€€å��ã€€ç§°";
+            this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
+            this.dataGridViewTextBoxColumn4.ReadOnly = true;
+            this.dataGridViewTextBoxColumn4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn4.Width = 230;
+            // 
+            // Column15
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle8;
+            this.Column15.Frozen = true;
+            this.Column15.HeaderText = "çŠ¶ã€€æ…‹";
+            this.Column15.Name = "Column15";
+            this.Column15.ReadOnly = true;
+            this.Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column15.Width = 80;
+            // 
+            // dataGridViewTextBoxColumn5
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle9;
+            this.dataGridViewTextBoxColumn5.Frozen = true;
+            this.dataGridViewTextBoxColumn5.HeaderText = "å�—æ³¨é‡‘é¡�";
+            this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
+            this.dataGridViewTextBoxColumn5.ReadOnly = true;
+            this.dataGridViewTextBoxColumn5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn5.Width = 120;
+            // 
+            // dataGridViewTextBoxColumn6
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle10;
+            this.dataGridViewTextBoxColumn6.HeaderText = "ä¼šç¤¾çµŒè²»";
+            this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
+            this.dataGridViewTextBoxColumn6.ReadOnly = true;
+            this.dataGridViewTextBoxColumn6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle11.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle11;
+            this.Column7.HeaderText = "éƒ¨ç½²çµŒè²»";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column8
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle12.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle12;
+            this.Column8.HeaderText = "å–¶æ¥­çµŒè²»";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // FrmPriceOfBudget
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1014, 584);
+            this.Controls.Add(this.dgvMain);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.btnEnd);
+            this.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmPriceOfBudget";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.groupBox1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMain)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label5;
+        private CustomControls.DataGridViewEX dgvMain;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column14;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column15;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+    }
+}
\ No newline at end of file
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs	(nonexistent)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs	(revision 20)
@@ -0,0 +1,750 @@
+ï»¿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 ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    /// <summary>
+    /// å·¥äº‹äºˆç®—çµŒè²»ä¸€è¦§è¡¨ç¤ºç”»é�¢
+    /// </summary>
+    public partial class FrmPriceOfBudget : Form
+    {
+        #region ãƒ­ã‚°ä½¿ç”¨å®šç¾©
+        //log4netãƒ­ã‚°ã‚’ä½¿ç”¨ã�™ã‚‹
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region å®šæ•°
+        /// <summary>
+        /// è¡¨ç¤ºã‚«ãƒ©ãƒ 
+        /// </summary>
+        private enum GridColumn
+        {
+            No = 0,
+            DepartmentName,
+            PersonName,
+            ConstrCode,
+            ConstrName,
+            ConnstrStatus,
+            OrdersPrice,
+            CompanyExpeses,
+            DepartmentExpeses,
+            SaleseExpeses,
+        }
+        /// <summary>
+        /// ã‚°ãƒªãƒƒãƒ‰è¡¨ç¤ºè¡Œæ•°
+        /// </summary>
+        private const int s_GridDispLine = 5;
+        /// <summary>
+        /// è‡ªç”»é�¢å¹…
+        /// </summary>
+        private const int s_MyWidth = 682;
+        /// <summary>
+        /// è‡ªç”»é�¢é«˜ã�•
+        /// </summary>
+        private const int s_MyHeight = 368;
+
+        #region å�ˆè¨ˆè¡Œè‰²
+        /// <summary>
+        /// å�ˆè¨ˆè¡Œè‰²
+        /// </summary>
+        private static Color s_RowTotalBackColor = Color.Black;
+        private static Color s_RowTotalForeColor = Color.White;
+        #endregion
+
+        #region è¡Œã‚¿ã‚¤ãƒˆãƒ«
+        /// <summary>
+        /// è¡Œã‚¿ã‚¤ãƒˆãƒ«ä¸¦ã�³é †
+        /// </summary>
+        private enum RowTitleNum
+        {
+            /// <summary>
+            /// å�°å¸³æœªä½œæˆ�åˆ†å�ˆè¨ˆ
+            /// </summary>
+            DataType1 = 0,
+            /// <summary>
+            /// 
+            /// </summary>
+            DataType2,
+            /// <summary>
+            /// 
+            /// </summary>
+            DataType3,
+            /// <summary>
+            /// ç·�å�ˆè¨ˆ
+            /// </summary>
+            AllTotal,
+        }
+
+        /// <summary>
+        /// å�ˆè¨ˆè¡Œã‚¿ã‚¤ãƒˆãƒ«
+        /// </summary>
+        private static string[] s_TotalTitleArray = new string[] {  "ï¼Šå�°å¸³æœªä½œæˆ�åˆ†å�ˆè¨ˆï¼Š",
+                                                                    "ï¼Šã€€ã€€ã€€ã€€ã€€ã€€ã€€ã€€ã€€ï¼Š",
+                                                                    "ï¼Šã€€ã€€ã€€ã€€ã€€ã€€ã€€ã€€ã€€ï¼Š",
+                                                                    "ï¼Šï¼Šã€€ç·�ã€€å�ˆã€€è¨ˆã€€ï¼Šï¼Š",
+                                                                };
+        #endregion
+        #endregion
+
+        #region å¤‰æ•°
+        /// <summary>
+        /// åˆ�æœŸæ™‚ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private bool m_initDataLoad = true;
+
+        /// <summary>
+        /// è¡¨ç¤ºä½�ç½®
+        /// </summary>
+        private Point m_LocationPoint = new Point(((System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width / 2) - (s_MyWidth / 2)),
+                                                    ((System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height / 2) - (s_MyHeight / 2)));
+
+        /// <summary>
+        /// çµ‚äº†çŠ¶æ…‹ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        #endregion
+
+        #region ãƒ—ãƒ­ãƒ‘ãƒ†ã‚£
+
+        /// <summary>
+        /// çµ‚äº†ãƒœã‚¿ãƒ³çŠ¶æ…‹
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        /// <summary>
+        /// è¡¨ç¤ºä½�ç½®
+        /// </summary>
+        public Point LocationPoint
+        {
+            get { return m_LocationPoint; }
+            set { m_LocationPoint = value; }
+        }
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// <summary>
+        /// ãƒ•ã‚©ãƒ¼ãƒ åˆ�æœŸåŒ–
+        /// </summary>
+        public FrmPriceOfBudget()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region å–¶æ¥­æœŸã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹å¤‰æ›´
+        /// <summary>
+        /// å–¶æ¥­æœŸå¤‰æ›´
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+            // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+            DispData();
+        }
+        #endregion
+
+        #region æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹å¤‰æ›´
+        /// <summary>
+        /// æ‹…å½“è€…å¤‰æ›´
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+            DispData();
+        }
+        #endregion
+
+        #region éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹å¤‰æ›´
+        /// <summary>
+        /// éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹å¤‰æ›´
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹å¤‰æ›´
+            SetcmbPersons();
+
+            // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+            DispData();
+        }
+        #endregion
+
+        #region ã‚°ãƒªãƒƒãƒ‰ãƒ€ãƒ–ãƒ«ã‚¯ãƒªãƒƒã‚¯
+        /// <summary>
+        /// ã‚°ãƒªãƒƒãƒ‰ãƒ€ãƒ–ãƒ«ã‚¯ãƒªãƒƒã‚¯
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMain_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                // ç„¡åŠ¹è¡Œã�¯å‡¦ç�†ã�—ã�ªã�„
+                if (e.ColumnIndex < 0 || e.RowIndex < 0) return;
+                DataGridViewEX dgv = (DataGridViewEX)sender;
+                if (CommonMotions.chkCellBlank(dgv.CurrentRow.Cells[(int)GridColumn.ConstrCode].Value)) return;
+
+                // å·¥äº‹ç•ªå�·å�–å¾—
+                int iConstructionCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)GridColumn.ConstrCode].Value);
+
+                // æ¬¡èµ·å‹•ãƒ—ãƒ­ã‚»ã‚¹ã‚»ãƒƒãƒˆ
+                int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
+                // é�¸æŠžå·¥äº‹ç•ªå�·ã‚»ãƒƒãƒˆ
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iConstructionCode);
+
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        #region çµ‚äº†ãƒœã‚¿ãƒ³
+        /// <summary>
+        /// çµ‚äº†ãƒœã‚¿ãƒ³æŠ¼ä¸‹
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.None;
+            this.Close();
+        }
+        #endregion
+
+        #region ãƒ•ã‚©ãƒ¼ãƒ ãƒ­ãƒ¼ãƒ‰
+        /// <summary>
+        /// ãƒ•ã‚©ãƒ¼ãƒ ãƒ­ãƒ¼ãƒ‰
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // ãƒ•ã‚©ãƒ¼ãƒ ã‚µã‚¤ã‚ºå›ºå®š
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // æ¤œç´¢å¹´åº¦ã‚»ãƒƒãƒˆ
+            // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
+            int minval = 0;
+            int maxval = 0;
+            CommonMotions.GetPeriodYear(ref minval, ref maxval);
+            numUDConstPro.Minimum = minval;
+            numUDConstPro.Maximum = maxval;
+            numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+
+            // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚»ãƒƒãƒˆ
+            SetcmbDepartment();
+            SetcmbPersons();
+
+            // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+            DispData();
+
+            m_initDataLoad = false;
+        }
+        #endregion
+
+        #region ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+        /// <summary>
+        /// ãƒ‡ãƒ¼ã‚¿è¡¨ç¤ºå‡¦ç�†
+        /// </summary>
+        private void DispData()
+        {
+            try
+            {
+                dgvMain.Rows.Clear();
+
+                // ãƒ‡ãƒ¼ã‚¿è¡¨ç¤ºå‡¦ç�†
+                SetRowData();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region èª­è¾¼ã�¿ä¸¦ã�³
+        /// <summary>
+        /// èª­è¾¼ã�¿ä¸¦ã�³
+        /// </summary>
+        private enum DetilData
+        {
+            /// <summary>
+            /// éƒ¨ç½²è¡¨ç¤ºé †
+            /// </summary>
+            DepDisplayOrder = 0,
+            /// <summary>
+            /// å·¥äº‹ç•ªå�·
+            /// </summary>
+            ConstructionCode,
+            /// <summary>
+            /// å�—æ³¨é‡‘é¡�
+            /// </summary>
+            OrdersDecisionPrice,
+            /// <summary>
+            /// æ–½å·¥çŠ¶æ…‹ãƒ•ãƒ©ã‚°
+            /// </summary>
+            ConstructionStatusFlg,
+            /// <summary>
+            /// å·¥äº‹æ‹…å½“è€…ç•ªå�·
+            /// </summary>
+            ConstructionPersonCode,
+            /// <summary>
+            /// éƒ¨ç½²å��
+            /// </summary>
+            DepartmentString,
+            /// <summary>
+            /// æ‹…å½“è€…å��
+            /// </summary>
+            PersonName,
+            /// <summary>
+            /// ä¼šç¤¾çµŒè²»
+            /// </summary>
+            ExpensesRatio1,
+            /// <summary>
+            /// éƒ¨ç½²çµŒè²»
+            /// </summary>
+            ExpensesRatio2,
+            /// <summary>
+            /// å–¶æ¥­çµŒè²»
+            /// </summary>
+            ExpensesRatio3,
+            /// <summary>
+            /// å·¥äº‹å��ç§°
+            /// </summary>
+            ConstrName,
+            /// <summary>
+            /// æ‹…å½“è€…è¡¨ç¤ºé †
+            /// </summary>
+            PersonDisplayOrder,
+        }
+        #endregion
+
+        #region ãƒ‡ãƒ¼ã‚¿è¡¨ç¤º
+        /// <summary>
+        /// ãƒ‡ãƒ¼ã‚¿è¡¨ç¤ºå‡¦ç�†
+        /// </summary>
+        private void SetRowData()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            DataGridView dgv = dgvMain;
+            try
+            {
+                int SelectPeriod = (int)numUDConstPro.Value;
+                // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚ˆã‚Šé�¸æŠžéƒ¨ç½²ã‚’å�–å¾—ã�™ã‚‹
+                int DepartmantCode = GetDepartmentCode();
+                // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚ˆã‚Šé�¸æŠžæ‹…å½“è€…ã‚’å�–å¾—ã�™ã‚‹
+                int PersonCode = GetConstructionPersonCode();
+
+                int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("ä»® å�— æ³¨")).Key;
+                int iCode2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("æ–½å·¥é–‹å§‹")).Key;
+
+                string strSQL = "(SELECT C1.DISPLAYORDER, A.CONSTRUCTIONCODE, A.ORDERSDECISIONPRICE,";
+                strSQL += " A.CONSTRUCTIONSTATUSFLG, A.CONSTRUCTIONPERSONCODE,";
+                strSQL += " C1.DEPARTMENTSTRING, B1.PERSONNAME,";
+                strSQL += " D1.EXPENSESRATIO, D2.EXPENSESRATIO, D3.EXPENSESRATIO,";
+                strSQL += " E1.DETAILSTRING, B1.DISPLAYORDER";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A, PERSONINCHARGEMASTER B1, DEPARTMENTMASTER C1";
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D1 ON D1.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D1.EXPENSESPERIOD = {0} AND D1.NameCode = 3", SelectPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D2 ON D2.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D2.EXPENSESPERIOD = {0} AND D2.NameCode = 2", SelectPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D3 ON D3.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D3.EXPENSESPERIOD = {0} AND D3.NameCode = 1", SelectPeriod);
+                strSQL += ", CONSTRUCTIONBASEINFODETAIL E1";
+                strSQL += " WHERE NOT EXISTS (SELECT * FROM CONSTRUCTIONLEDGER A1 WHERE A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                strSQL += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", SelectPeriod);
+                strSQL += string.Format(" AND A.TYINGFLG = {0}", (int)CommonDefine.BaseInfoTyingFlg.Standard);
+                strSQL += string.Format(" And ({0} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {1})", iCode1, iCode2);
+                strSQL += " AND B1.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " AND C1.DEPARTMENTCODE = B1.DEPARTMENTCODE";
+                strSQL += " AND E1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND E1.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                if (DepartmantCode > 0) strSQL += string.Format(" AND C1.DEPARTMENTCODE = {0}", DepartmantCode);
+                if (PersonCode > 0) strSQL += string.Format(" AND B1.PERSONCODE = {0}", PersonCode);
+                strSQL += ")";
+                strSQL += " UNION";
+                strSQL += " (SELECT C1.DISPLAYORDER, A.CONSTRUCTIONCODE, SUM(A.ORDERSDECISIONPRICE) + SUM(NVL(C.ORDERSDECISIONPRICE,0)),";
+                strSQL += " A.CONSTRUCTIONSTATUSFLG, A.CONSTRUCTIONPERSONCODE,";
+                strSQL += " C1.DEPARTMENTSTRING, B1.PERSONNAME,";
+                strSQL += " D1.EXPENSESRATIO, D2.EXPENSESRATIO, D3.EXPENSESRATIO,";
+                strSQL += " E1.DETAILSTRING, B1.DISPLAYORDER";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A LEFT JOIN CONSTRUCTIONLINK B ON B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO C ON C.CONSTRUCTIONCODE = B.FLUCTUATIONCODE";
+                strSQL += ", PERSONINCHARGEMASTER B1, DEPARTMENTMASTER C1";
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D1 ON D1.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D1.EXPENSESPERIOD = {0} AND D1.NameCode = 3", SelectPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D2 ON D2.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D2.EXPENSESPERIOD = {0} AND D2.NameCode = 2", SelectPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER D3 ON D3.DEPARTMENTCODE = C1.DEPARTMENTCODE AND D3.EXPENSESPERIOD = {0} AND D3.NameCode = 1", SelectPeriod);
+                strSQL += ", CONSTRUCTIONBASEINFODETAIL E1";
+                strSQL += " WHERE NOT EXISTS (SELECT * FROM CONSTRUCTIONLEDGER A1 WHERE A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                strSQL += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", SelectPeriod);
+                strSQL += string.Format(" AND A.TYINGFLG != {0}", (int)CommonDefine.BaseInfoTyingFlg.Standard);
+                strSQL += string.Format(" And ({0} <= A.ConstructionStatusFlg And A.ConstructionStatusFlg <= {1})", iCode1, iCode2);
+                strSQL += " AND B1.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " AND C1.DEPARTMENTCODE = B1.DEPARTMENTCODE";
+                strSQL += " AND E1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND E1.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                if (DepartmantCode > 0) strSQL += string.Format(" AND C1.DEPARTMENTCODE = {0}", DepartmantCode);
+                if (PersonCode > 0) strSQL += string.Format(" AND B1.PERSONCODE = {0}", PersonCode);
+                strSQL += " GROUP BY C1.DISPLAYORDER, A.CONSTRUCTIONCODE, A.CONSTRUCTIONSTATUSFLG, A.CONSTRUCTIONPERSONCODE, C1.DEPARTMENTSTRING, B1.PERSONNAME, ";
+                strSQL += " D1.EXPENSESRATIO, D2.EXPENSESRATIO, D3.EXPENSESRATIO, E1.DETAILSTRING, B1.DISPLAYORDER)";
+                strSQL += " ORDER BY 1, 12, 2";
+
+                ArrayList DatArList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref DatArList)) return;
+                if (DatArList.Count == 0) return;
+
+                // å�ˆè¨ˆã‚¨ãƒªã‚¢
+                int TotalColCnt = Enum.GetNames(typeof(GridColumn)).Length;
+                int[] TotalArea = new int[TotalColCnt];
+                Array.Clear(TotalArea, 0, TotalArea.Length);
+
+                int ino = 1;
+                bool FirstFlg = true;
+                string BreakKey = string.Empty;
+                foreach (object[] objGetArry in DatArList)
+                {
+                    int ConstrStatus = CommonMotions.cnvInt(objGetArry[(int)DetilData.ConstructionStatusFlg]);          // æ–½å·¥çŠ¶æ…‹ãƒ•ãƒ©ã‚°
+                    int OrdersDecisionPrice = CommonMotions.cnvInt(objGetArry[(int)DetilData.OrdersDecisionPrice]);     // å�—æ³¨é‡‘é¡�
+                    double ExpensesRatio1 = CommonMotions.cnvDouble(objGetArry[(int)DetilData.ExpensesRatio1]) / 100.0; // ä¼šç¤¾çµŒè²»
+                    double ExpensesRatio2 = CommonMotions.cnvDouble(objGetArry[(int)DetilData.ExpensesRatio2]) / 100.0; // éƒ¨ç½²çµŒè²»
+                    double ExpensesRatio3 = CommonMotions.cnvDouble(objGetArry[(int)DetilData.ExpensesRatio3]) / 100.0; // å–¶æ¥­çµŒè²»
+
+                    string workDepName = CommonMotions.cnvString(objGetArry[(int)DetilData.DepartmentString]);
+                    if (!BreakKey.Equals(workDepName))
+                    {
+                        if (!FirstFlg) dgv.Rows.Add(1);
+                        FirstFlg = false;
+                        BreakKey = workDepName;
+                    }
+                    dgv.Rows.Add((ino++)
+                                    , CommonMotions.cnvString(objGetArry[(int)DetilData.DepartmentString])      // éƒ¨ç½²å��
+                                    , CommonMotions.cnvString(objGetArry[(int)DetilData.PersonName])            // æ‹…å½“è€…å��
+                                    , CommonMotions.cnvInt(objGetArry[(int)DetilData.ConstructionCode])         // å·¥äº‹ç•ªå�·
+                                    , CommonMotions.cnvString(objGetArry[(int)DetilData.ConstrName])            // å·¥äº‹å��ç§°
+                                    , CommonDefine.ProjectsStatus[ConstrStatus]                                 // æ–½å·¥çŠ¶æ…‹
+                                    , OrdersDecisionPrice.ToString("#,0")                                       // å�—æ³¨é‡‘é¡�
+                                    , (OrdersDecisionPrice * ExpensesRatio1).ToString("#,0")                    // ä¼šç¤¾çµŒè²»
+                                    , (OrdersDecisionPrice * ExpensesRatio2).ToString("#,0")                    // éƒ¨ç½²çµŒè²»
+                                    , (OrdersDecisionPrice * ExpensesRatio3).ToString("#,0")                    // å–¶æ¥­çµŒè²»
+                                );
+
+                    TotalArea[(int)GridColumn.OrdersPrice] += OrdersDecisionPrice;                                  // å�—æ³¨é‡‘é¡�
+                    TotalArea[(int)GridColumn.CompanyExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio1);       // ä¼šç¤¾çµŒè²»
+                    TotalArea[(int)GridColumn.DepartmentExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio2);    // éƒ¨ç½²çµŒè²»
+                    TotalArea[(int)GridColumn.SaleseExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio3);        // å–¶æ¥­çµŒè²»
+                }
+
+                // å�ˆè¨ˆè¡Œè¡¨ç¤º
+                int TotalRow = dgv.Rows.Add(1);
+                dgv.Rows[TotalRow].Cells[(int)GridColumn.ConstrName].Value = s_TotalTitleArray[(int)RowTitleNum.DataType1];
+                dgv.Rows[TotalRow].Cells[(int)GridColumn.ConstrName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                    // è¡Œã�®è‰²ã‚’å¤‰ã�ˆã‚‹
+                SetRowColor(dgv.Rows[TotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
+
+                // æ•°å€¤è¡¨ç¤º
+                for (int i = (int)GridColumn.OrdersPrice; i <= (int)GridColumn.SaleseExpeses; i++)
+                {
+                    dgv.Rows[TotalRow].Cells[i].Value = TotalArea[i].ToString("#,0");
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
+                {
+                    dgv.RowCount += CommonDefine.s_MaxInitLineCount - dgv.RowCount;
+                }
+            }
+        }
+        #endregion
+
+        #region è¡Œè‰²è¨­å®š
+        /// <summary>
+        /// è¡Œã‚’é�¸æŠžè‰²ã�«ã�™ã‚‹
+        /// </summary>
+        /// <param name="CurrentRow"></param>
+        private void SetRowColor(DataGridViewRow CurRow, Color BackColor, Color ForeColor)
+        {
+            try
+            {
+                DataGridView dgv = dgvMain;
+
+                // è¡Œã�®è‰²ã‚’å¤‰ã�ˆã‚‹
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    CurRow.Cells[i].Style.BackColor = BackColor;
+                    CurRow.Cells[i].Style.ForeColor = ForeColor;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        #region éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// <summary>
+        /// éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã�¸æ–‡å­—ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        private bool SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // éƒ¨ç½²ãƒžã‚¹ã‚¿ã‚’æ¤œç´¢ã�™ã‚‹
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C, CONSTRUCTIONBUDGET D";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // ã‚·ã‚¹ãƒ†ãƒ æ¨©é™�ã�«ã‚ˆã�£ã�¦ãƒ‡ãƒ¼ã‚¿ã‚¢ã‚¯ã‚»ã‚¹ã�«åˆ¶é™�ã�Œã�‚ã‚‹
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                    || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // æ‰€å±žé•·
+                    // ä¸€èˆ¬ä½¿ç”¨è€…ï¼ˆè‡ªåˆ†ã�®ã�¿ã‚¢ã‚¯ã‚»ã‚¹å�¯èƒ½ï¼‰
+                    strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // éƒ¨ç½²ãƒžã‚¹ã‚¿èª­è¾¼
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
+
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹åˆ�æœŸè¡¨ç¤º
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                // æ‰€å±žé•·
+                // ä¸€èˆ¬ä½¿ç”¨è€…ï¼ˆè‡ªåˆ†ã�®ã�¿ã‚¢ã‚¯ã‚»ã‚¹å�¯èƒ½ï¼‰
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ç·�å‹™éƒ¨æ‰€å±žè€…ä»¥å¤–
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// <summary>
+        /// æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã�¸æ–‡å­—ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        private bool SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
+
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
+
+                // æ‹…å½“è€…ãƒžã‚¹ã‚¿èª­è¾¼
+                if (!picDB.SelectAction(strSQL, ref workList)) return false;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹åˆ�æœŸè¡¨ç¤º
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                // ä¸€èˆ¬ãƒ¦ãƒ¼ã‚¶ãƒ¼ã�§ç·�å‹™éƒ¨æ‰€å±žè€…ã�§ã�¯ã�ªã�„å ´å�ˆã€�ãƒ­ã‚°ã‚¤ãƒ³è€…ã�®ã‚³ãƒ¼ãƒ‰ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                    CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                {
+                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region éƒ¨ç½²ã‚³ãƒ³ãƒœã‚ˆã‚Šæ‹…å½“è€…ã‚³ãƒ¼ãƒ‰ã‚’å�–å¾—ã�™ã‚‹
+        /// <summary>
+        /// éƒ¨ç½²ã‚³ãƒ³ãƒœã‚ˆã‚Šæ‹…å½“è€…ã‚³ãƒ¼ãƒ‰ã‚’å�–å¾—ã�™ã‚‹
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                // è¡¨ç¤ºã�•ã‚Œã�¦ã�„ã�ªã�„å ´å�ˆã�¯é�¸æŠžç„¡
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region æ‹…å½“è€…ã‚³ãƒ³ãƒœã‚ˆã‚Šæ‹…å½“è€…ã‚³ãƒ¼ãƒ‰ã‚’å�–å¾—ã�™ã‚‹
+        /// <summary>
+        /// æ‹…å½“è€…ã‚³ãƒ³ãƒœã‚ˆã‚Šæ‹…å½“è€…ã‚³ãƒ¼ãƒ‰ã‚’å�–å¾—ã�™ã‚‹
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // è¡¨ç¤ºã�•ã‚Œã�¦ã�„ã�ªã�„å ´å�ˆã�¯é�¸æŠžç„¡
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚»ãƒƒãƒˆæ™‚éƒ¨ç½²ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// <summary>
+        /// æ‹…å½“è€…ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚»ãƒƒãƒˆæ™‚éƒ¨ç½²ã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚ˆã‚Šé�¸æŠžæ‹…å½“è€…ã‚’å�–å¾—ã�™ã‚‹
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã�¸éƒ¨ç½²ã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆ
+                if (PersonRec.DepartmentCode < 0 || DepartmentCode == PersonRec.DepartmentCode) return true;
+
+                m_initDataLoad = true;
+
+                // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆ
+                cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+
+                // æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰å†�ã‚»ãƒƒãƒˆ
+                cmbConstructionPerson.SelectedValue = PersonCode;
+
+                m_initDataLoad = false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+    }
+}
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.resx
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.resx	(nonexistent)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.resx	(revision 20)
@@ -0,0 +1,150 @@
+ï»¿<?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="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column14.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column15.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.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: trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs	(revision 20)
@@ -4742,6 +4742,7 @@
             this.btnOrder17.Name = "btnOrder17";
             this.btnOrder17.Size = new System.Drawing.Size(316, 38);
             this.btnOrder17.TabIndex = 17;
+            this.btnOrder17.Text = "test";
             this.btnOrder17.UseVisualStyleBackColor = true;
             this.btnOrder17.Click += new System.EventHandler(this.btnOrder_Click);
             // 
@@ -6228,7 +6229,7 @@
             this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
             this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
             this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.Size = new System.Drawing.Size(1080, 748);
+            this.tblLayoutMaster.Size = new System.Drawing.Size(1029, 748);
             this.tblLayoutMaster.TabIndex = 14;
             this.tblLayoutMaster.MouseEnter += new System.EventHandler(this.tblLayoutMaster_MouseEnter);
             // 
@@ -6240,7 +6241,7 @@
             this.btnMaster_00.Location = new System.Drawing.Point(4, 3);
             this.btnMaster_00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_00.Name = "btnMaster_00";
-            this.btnMaster_00.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_00.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_00.TabIndex = 0;
             this.btnMaster_00.Text = "ä¼šç¤¾æƒ…å ±ç™»éŒ²";
             this.btnMaster_00.UseVisualStyleBackColor = true;
@@ -6251,10 +6252,10 @@
             this.btnMaster_06.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_06.Location = new System.Drawing.Point(382, 3);
+            this.btnMaster_06.Location = new System.Drawing.Point(363, 3);
             this.btnMaster_06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_06.Name = "btnMaster_06";
-            this.btnMaster_06.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_06.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_06.TabIndex = 9;
             this.btnMaster_06.Text = "éƒ¨ç½²ç™»éŒ²";
             this.btnMaster_06.UseVisualStyleBackColor = true;
@@ -6265,10 +6266,10 @@
             this.btnMaster_10.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_10.Location = new System.Drawing.Point(382, 355);
+            this.btnMaster_10.Location = new System.Drawing.Point(363, 355);
             this.btnMaster_10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_10.Name = "btnMaster_10";
-            this.btnMaster_10.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_10.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_10.TabIndex = 13;
             this.btnMaster_10.Text = "æ³•äººæ ¼ç™»éŒ²";
             this.btnMaster_10.UseVisualStyleBackColor = true;
@@ -6279,10 +6280,10 @@
             this.btnMaster_09.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_09.Location = new System.Drawing.Point(382, 267);
+            this.btnMaster_09.Location = new System.Drawing.Point(363, 267);
             this.btnMaster_09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_09.Name = "btnMaster_09";
-            this.btnMaster_09.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_09.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_09.TabIndex = 12;
             this.btnMaster_09.Text = "è»Šã€€ä¸¡ã€€ç™»ã€€éŒ²";
             this.btnMaster_09.UseVisualStyleBackColor = true;
@@ -6293,10 +6294,10 @@
             this.btnMaster_08.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_08.Location = new System.Drawing.Point(382, 179);
+            this.btnMaster_08.Location = new System.Drawing.Point(363, 179);
             this.btnMaster_08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_08.Name = "btnMaster_08";
-            this.btnMaster_08.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_08.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_08.TabIndex = 11;
             this.btnMaster_08.Text = "å¤–æ³¨æ‰±ã�„ï¼ˆå¸¸é›‡å·¥ï¼‰ç™»éŒ²";
             this.btnMaster_08.UseVisualStyleBackColor = true;
@@ -6307,10 +6308,10 @@
             this.btnMaster_07.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_07.Location = new System.Drawing.Point(382, 91);
+            this.btnMaster_07.Location = new System.Drawing.Point(363, 91);
             this.btnMaster_07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_07.Name = "btnMaster_07";
-            this.btnMaster_07.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_07.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_07.TabIndex = 10;
             this.btnMaster_07.Text = "æ‹…å½“è€…ç™»éŒ²";
             this.btnMaster_07.UseVisualStyleBackColor = true;
@@ -6321,10 +6322,10 @@
             this.btnMaster_12.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_12.Location = new System.Drawing.Point(760, 3);
+            this.btnMaster_12.Location = new System.Drawing.Point(722, 3);
             this.btnMaster_12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_12.Name = "btnMaster_12";
-            this.btnMaster_12.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_12.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_12.TabIndex = 18;
             this.btnMaster_12.Text = "å�”åŠ›ä¼šç¤¾ç™»éŒ²";
             this.btnMaster_12.UseVisualStyleBackColor = true;
@@ -6335,10 +6336,10 @@
             this.btnMaster_13.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_13.Location = new System.Drawing.Point(760, 91);
+            this.btnMaster_13.Location = new System.Drawing.Point(722, 91);
             this.btnMaster_13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_13.Name = "btnMaster_13";
-            this.btnMaster_13.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_13.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_13.TabIndex = 18;
             this.btnMaster_13.Text = "å�”åŠ›ä¼šç¤¾å·¥ç¨®ç™»éŒ²";
             this.btnMaster_13.UseVisualStyleBackColor = true;
@@ -6349,10 +6350,10 @@
             this.btnMaster_14.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_14.Location = new System.Drawing.Point(760, 179);
+            this.btnMaster_14.Location = new System.Drawing.Point(722, 179);
             this.btnMaster_14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_14.Name = "btnMaster_14";
-            this.btnMaster_14.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_14.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_14.TabIndex = 20;
             this.btnMaster_14.Text = "å�”åŠ›ä¼šç¤¾è�·ç¨®ç™»éŒ²";
             this.btnMaster_14.UseVisualStyleBackColor = true;
@@ -6363,10 +6364,10 @@
             this.btnMaster_15.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_15.Location = new System.Drawing.Point(760, 267);
+            this.btnMaster_15.Location = new System.Drawing.Point(722, 267);
             this.btnMaster_15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_15.Name = "btnMaster_15";
-            this.btnMaster_15.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_15.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_15.TabIndex = 21;
             this.btnMaster_15.UseVisualStyleBackColor = true;
             this.btnMaster_15.Click += new System.EventHandler(this.btnMaster_Click);
@@ -6376,10 +6377,10 @@
             this.btnMaster_16.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_16.Location = new System.Drawing.Point(760, 355);
+            this.btnMaster_16.Location = new System.Drawing.Point(722, 355);
             this.btnMaster_16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_16.Name = "btnMaster_16";
-            this.btnMaster_16.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_16.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_16.TabIndex = 22;
             this.btnMaster_16.Text = "ç©�ç®—å�˜ä½�ç™»éŒ²";
             this.btnMaster_16.UseVisualStyleBackColor = true;
@@ -6390,10 +6391,10 @@
             this.btnMaster_11.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_11.Location = new System.Drawing.Point(382, 443);
+            this.btnMaster_11.Location = new System.Drawing.Point(363, 443);
             this.btnMaster_11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_11.Name = "btnMaster_11";
-            this.btnMaster_11.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_11.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_11.TabIndex = 14;
             this.btnMaster_11.Text = "ç™ºæ³¨è€…åŒºåˆ†ç™»éŒ²";
             this.btnMaster_11.UseVisualStyleBackColor = true;
@@ -6404,10 +6405,10 @@
             this.btnMaster_17.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_17.Location = new System.Drawing.Point(760, 443);
+            this.btnMaster_17.Location = new System.Drawing.Point(722, 443);
             this.btnMaster_17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_17.Name = "btnMaster_17";
-            this.btnMaster_17.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_17.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_17.TabIndex = 23;
             this.btnMaster_17.Text = "ç©�ç®—å¤§é …ç›®ç™»éŒ²";
             this.btnMaster_17.UseVisualStyleBackColor = true;
@@ -6421,7 +6422,7 @@
             this.btnMaster_05.Location = new System.Drawing.Point(4, 443);
             this.btnMaster_05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_05.Name = "btnMaster_05";
-            this.btnMaster_05.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_05.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_05.TabIndex = 5;
             this.btnMaster_05.Text = "æœŸã€€é™�ã€€ç™»ã€€éŒ²";
             this.btnMaster_05.UseVisualStyleBackColor = true;
@@ -6435,7 +6436,7 @@
             this.btnMaster_04.Location = new System.Drawing.Point(4, 355);
             this.btnMaster_04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_04.Name = "btnMaster_04";
-            this.btnMaster_04.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_04.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_04.TabIndex = 4;
             this.btnMaster_04.Text = "ä¼šç¤¾ä¼‘æ—¥ç™»éŒ²";
             this.btnMaster_04.UseVisualStyleBackColor = true;
@@ -6449,7 +6450,7 @@
             this.btnMaster_03.Location = new System.Drawing.Point(4, 267);
             this.btnMaster_03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_03.Name = "btnMaster_03";
-            this.btnMaster_03.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_03.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_03.TabIndex = 3;
             this.btnMaster_03.UseVisualStyleBackColor = true;
             this.btnMaster_03.Click += new System.EventHandler(this.btnMaster_Click);
@@ -6462,7 +6463,7 @@
             this.btnMaster_02.Location = new System.Drawing.Point(4, 179);
             this.btnMaster_02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_02.Name = "btnMaster_02";
-            this.btnMaster_02.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_02.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_02.TabIndex = 2;
             this.btnMaster_02.Text = "å·¥äº‹çµŒè²»å��ç§°ç™»éŒ²";
             this.btnMaster_02.UseVisualStyleBackColor = true;
@@ -6476,7 +6477,7 @@
             this.btnMaster_01.Location = new System.Drawing.Point(4, 91);
             this.btnMaster_01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_01.Name = "btnMaster_01";
-            this.btnMaster_01.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_01.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_01.TabIndex = 1;
             this.btnMaster_01.Text = "å·¥äº‹ç¨®åˆ¥ç™»éŒ²";
             this.btnMaster_01.UseVisualStyleBackColor = true;
@@ -6490,7 +6491,7 @@
             this.btnMaster_18.Location = new System.Drawing.Point(4, 531);
             this.btnMaster_18.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_18.Name = "btnMaster_18";
-            this.btnMaster_18.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_18.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_18.TabIndex = 6;
             this.btnMaster_18.UseVisualStyleBackColor = true;
             this.btnMaster_18.Click += new System.EventHandler(this.btnMaster_Click);
@@ -6500,10 +6501,10 @@
             this.btnMaster_19.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_19.Location = new System.Drawing.Point(382, 531);
+            this.btnMaster_19.Location = new System.Drawing.Point(363, 531);
             this.btnMaster_19.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_19.Name = "btnMaster_19";
-            this.btnMaster_19.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_19.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_19.TabIndex = 15;
             this.btnMaster_19.Text = "ç™ºæ³¨è€…ç™»éŒ²";
             this.btnMaster_19.UseVisualStyleBackColor = true;
@@ -6514,10 +6515,10 @@
             this.btnMaster_20.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_20.Location = new System.Drawing.Point(760, 531);
+            this.btnMaster_20.Location = new System.Drawing.Point(722, 531);
             this.btnMaster_20.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_20.Name = "btnMaster_20";
-            this.btnMaster_20.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_20.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_20.TabIndex = 24;
             this.btnMaster_20.Text = "ç©�ç®—å¤§ãƒ»ä¸­é …ç›®é–¢é€£ç™»éŒ²";
             this.btnMaster_20.UseVisualStyleBackColor = true;
@@ -6531,7 +6532,7 @@
             this.btnMaster_21.Location = new System.Drawing.Point(4, 619);
             this.btnMaster_21.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_21.Name = "btnMaster_21";
-            this.btnMaster_21.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_21.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_21.TabIndex = 7;
             this.btnMaster_21.Text = "å£²ä¸Šã‚°ãƒ©ãƒ•ãƒ‡ãƒ¼ã‚¿å…¥åŠ›";
             this.btnMaster_21.UseVisualStyleBackColor = true;
@@ -6542,10 +6543,10 @@
             this.btnMaster_22.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_22.Location = new System.Drawing.Point(382, 619);
+            this.btnMaster_22.Location = new System.Drawing.Point(363, 619);
             this.btnMaster_22.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_22.Name = "btnMaster_22";
-            this.btnMaster_22.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_22.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_22.TabIndex = 16;
             this.btnMaster_22.Text = "è³¼å…¥å…ˆç™»éŒ²";
             this.btnMaster_22.UseVisualStyleBackColor = true;
@@ -6556,10 +6557,10 @@
             this.btnMaster_23.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_23.Location = new System.Drawing.Point(760, 619);
+            this.btnMaster_23.Location = new System.Drawing.Point(722, 619);
             this.btnMaster_23.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_23.Name = "btnMaster_23";
-            this.btnMaster_23.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_23.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_23.TabIndex = 25;
             this.btnMaster_23.Text = "ç©�ç®—ä¸­é …ç›®ç™»éŒ²";
             this.btnMaster_23.UseVisualStyleBackColor = true;
@@ -6573,7 +6574,7 @@
             this.btnMaster_24.Location = new System.Drawing.Point(4, 707);
             this.btnMaster_24.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_24.Name = "btnMaster_24";
-            this.btnMaster_24.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_24.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_24.TabIndex = 8;
             this.btnMaster_24.Text = "éƒ¨ç½²åˆ¥å·¥äº‹å�°å¸³ã�¾ã�¨ã‚�ä¸€è¦§";
             this.btnMaster_24.UseVisualStyleBackColor = true;
@@ -6584,10 +6585,10 @@
             this.btnMaster_25.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_25.Location = new System.Drawing.Point(382, 707);
+            this.btnMaster_25.Location = new System.Drawing.Point(363, 707);
             this.btnMaster_25.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_25.Name = "btnMaster_25";
-            this.btnMaster_25.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_25.Size = new System.Drawing.Size(300, 38);
             this.btnMaster_25.TabIndex = 17;
             this.btnMaster_25.Text = "æ‰¿èª�çµŒè·¯ç™»éŒ²";
             this.btnMaster_25.UseVisualStyleBackColor = true;
@@ -6598,10 +6599,10 @@
             this.btnMaster_26.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_26.Location = new System.Drawing.Point(760, 707);
+            this.btnMaster_26.Location = new System.Drawing.Point(722, 707);
             this.btnMaster_26.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnMaster_26.Name = "btnMaster_26";
-            this.btnMaster_26.Size = new System.Drawing.Size(316, 38);
+            this.btnMaster_26.Size = new System.Drawing.Size(303, 38);
             this.btnMaster_26.TabIndex = 26;
             this.btnMaster_26.Text = "ç©�ç®—å°�é …ç›®ç™»éŒ²";
             this.btnMaster_26.UseVisualStyleBackColor = true;
Index: trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 20)
@@ -1781,6 +1781,9 @@
                 }
                 else if (btnKey.Name == "btnOrder17")
                 {
+                    FrmPriceOfBudget frm = new FrmPriceOfBudget();
+                    frm.ShowDialog();
+                    frm.Dispose(); frm = null;
                 }
                 // å‡¦ç�†å®Ÿè¡Œ
                 ClsExcute.ProcesscExecute();
Index: trunk/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj
===================================================================
--- trunk/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 19)
+++ trunk/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 20)
@@ -1176,7 +1176,6 @@
   </ItemGroup>
   <ItemGroup>
     <Folder Include="DB\SqlServerCompact\" />
-    <Folder Include="Forms\DataEntry\ConstrAdd\" />
     <Folder Include="Utility\" />
   </ItemGroup>
   <ItemGroup>
Index: trunk/src/ProcessManagement/ProcessManagement.v12.suo
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
