Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 339)
@@ -1670,20 +1670,30 @@
         }
         #endregion
 
-        #region æœŸã�®æœ€å¤§ãƒ»æœ€å°‘ã‚’å�–å¾—ã�™ã‚‹
+        #region å·¥äº‹æƒ…å ±ã‚ˆã‚ŠæœŸã�®æœ€å¤§ãƒ»æœ€å°‘ã‚’å�–å¾—ã�™ã‚‹
         /// <summary>
-        /// æœŸã�®æœ€å¤§ãƒ»æœ€å°‘ã‚’å�–å¾—ã�™ã‚‹
+        /// å·¥äº‹æƒ…å ±ã‚ˆã‚ŠæœŸã�®æœ€å¤§ãƒ»æœ€å°‘ã‚’å�–å¾—ã�™ã‚‹
         /// </summary>
         /// <param name="StartDate"></param>
         /// <returns></returns>
-        public static void GetPeriodYear(ref int min, ref int max)
+        public static void GetPeriodYearMinMax(ref int min, ref int max)
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             try
             {
-                string strSQL = "SELECT MIN(CONSTRUCTIONPERIOD), MAX(CONSTRUCTIONPERIOD) FROM CONSTRUCTIONBASEINFO";
+                StringBuilder strSQL = new StringBuilder();
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
+                {   // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
+                    strSQL.Append("SELECT MIN(CONSTRUCTIONPERIOD), MAX(CONSTRUCTIONPERIOD) FROM CONSTRUCTIONBASEINFO");
+                }
+                else
+                {   // ----- å·¥äº‹å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
+                    strSQL.Append("SELECT MIN(ConstructionYear), MAX(ConstructionYear) FROM CONSTRUCTIONBASEINFO");
+                }
+
                 ArrayList arList = new ArrayList();
-                if (!cbiDB.ExecuteReader(strSQL, ref arList)) return;
+                if (!cbiDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
                 object[] wrkobj = (object[])arList[0];
                 min = cnvInt(wrkobj[0]);
                 max = cnvInt(wrkobj[1]);
@@ -1700,6 +1710,38 @@
         }
         #endregion
 
+        #region ç®¡ç�†ãƒžã‚¹ã‚¿ã�®ç�¾åœ¨å¹´ã‚’å�–å¾—ã�™ã‚‹
+        /// <summary>
+        /// ç®¡ç�†ãƒžã‚¹ã‚¿ã�®ç�¾åœ¨å¹´ã‚’å�–å¾—ã�™ã‚‹
+        /// </summary>
+        /// <returns></returns>
+        public static int GetPeriodYear()
+        {
+            try
+            {
+                int nYearVal = DateTime.Now.Year;
+
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
+                {
+                    // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
+                    nYearVal = CommonMotions.SystemMasterData.BusinessPeriod;
+                }
+                else
+                {
+                    // ----- å·¥äº‹å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
+                    nYearVal = CommonMotions.SystemMasterData.ConstrYear;
+                }
+
+                return nYearVal;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
         #region å¯¾è±¡æ—¥ã‚ˆã‚Šå–¶æ¥­æœŸãƒ»å·¥äº‹å¹´åº¦ã‚’å�–å¾—ã�™ã‚‹
         /// <summary>
         /// å¯¾è±¡æ—¥ã‚ˆã‚Šå–¶æ¥­æœŸãƒ»å·¥äº‹å¹´åº¦ã‚’å�–å¾—ã�™ã‚‹
@@ -2217,14 +2259,11 @@
         }
         #endregion
 
-        #region ç�¾åœ¨å¹´å�–å¾—
+        #region ç�¾åœ¨å¹´ã‚’è¥¿æš¦ã�§æ±‚ã‚�ã‚‹
         /// <summary>
-        /// ç�¾åœ¨å¹´ã‚’æ±‚ã‚�ã‚‹
+        /// ç�¾åœ¨å¹´ã‚’è¥¿æš¦ã�§æ±‚ã‚�ã‚‹
         /// </summary>
-        /// <param name="bPeriod"></param>
-        /// <param name="MinCode"></param>
-        /// <param name="MaxCode"></param>
-        public static int GetBaseCounstructionYear(bool bPeriod, int years)
+        public static int GetBaseCounstructionYear(int years)
         {
             try
             {
@@ -2231,23 +2270,23 @@
                 int Beginning = 0;
                 int diffwork = 0;
                 string strwork = string.Empty;
-                if (bPeriod)
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
                 {   // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
 
                     // ç�¾åœ¨æœŸã�¨ã�®å·®åˆ†ã‚’æ±‚ã‚�ã‚‹
-                    diffwork = years - CommonMotions.SystemMasterData.BusinessPeriod;
+                    diffwork = years - SystemMasterData.BusinessPeriod;
 
                     // æœŸé¦–æœˆã‚’å�–å¾—ã�™ã‚‹
-                    Beginning = CommonMotions.SystemMasterData.BusinessBeginDate.Month;
+                    Beginning = SystemMasterData.BusinessBeginDate.Month;
                 }
                 else
                 {   // ----- å–¶æ¥­å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
 
                     // ç�¾åœ¨æœŸã�¨ã�®å·®åˆ†ã‚’æ±‚ã‚�ã‚‹
-                    diffwork = years - CommonMotions.SystemMasterData.ConstrYear;
+                    diffwork = years - SystemMasterData.ConstrYear;
 
                     // æœŸé¦–æœˆã‚’å�–å¾—ã�™ã‚‹
-                    Beginning = CommonMotions.SystemMasterData.ConstrBeginDate.Month;
+                    Beginning = SystemMasterData.ConstrBeginDate.Month;
                 }
 
                 // å¹´æ•°ã‚’æ±‚ã‚�ã‚‹
@@ -2265,41 +2304,12 @@
             }
             catch (System.Exception ex)
             {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", GetMethodName(), ex.Message);
                 return 0;
             }
         }
         #endregion
 
-        #region æœŸé¦–ã�®æœˆæ—¥ã‚’å�–å¾—ã�™ã‚‹
-        /// <summary>
-        /// æœŸé¦–ã�®æœˆæ—¥ã‚’å�–å¾—ã�™ã‚‹
-        /// </summary>
-        /// <param name="bPeriod"></param>
-        /// <param name="Mounth"></param>
-        /// <param name="Days"></param>
-        public static void GetNowBeginMonthDay(bool bPeriod, ref int Mounth, ref int Days)
-        {
-            try
-            {
-                if (bPeriod)
-                {   // å–¶æ¥­æœŸ
-                    Mounth = CommonMotions.SystemMasterData.BusinessBeginDate.Month;
-                    Days = CommonMotions.SystemMasterData.BusinessBeginDate.Day;
-                }
-                else
-                {   // å·¥äº‹å¹´åº¦
-                    Mounth = CommonMotions.SystemMasterData.ConstrBeginDate.Month;
-                    Days = CommonMotions.SystemMasterData.ConstrBeginDate.Day;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region æŒ‡å®šæœŸãƒ»æŒ‡å®šå¹´åº¦ã�®æœŸé¦–æ—¥ãƒ»æœŸæœ«æ—¥ã‚’å�–å¾—ã�™ã‚‹
         /// <summary>
         /// æŒ‡å®šæœŸãƒ»æŒ‡å®šå¹´åº¦ã�®æœŸé¦–æ—¥ãƒ»æœŸæœ«æ—¥ã‚’å�–å¾—ã�™ã‚‹
@@ -2308,7 +2318,7 @@
         /// <param name="bOpen"></param>
         /// <param name="bPeriod"></param>
         /// <returns></returns>
-        public static DateTime GetOpeningEndDate(int nYear, bool bOpen = true, bool bPeriod = true)
+        public static DateTime GetOpeningEndDate(int nYear, bool bOpen = true, bool bAuto = true, int nConstrNoBase = 0)
         {
             IOMBizPeriodHistory BizHisDB = new IOMBizPeriodHistory();
             try
@@ -2318,6 +2328,29 @@
                 StringBuilder strSQL = new StringBuilder();
                 BizPeriodHistory BizHisRec = new BizPeriodHistory();
 
+                // ã‚·ã‚¹ãƒ†ãƒ åŸºæº–è‡ªå‹•åˆ¤å®š
+                int nCheckFlag = -1;
+                if (bAuto)
+                {
+                    nCheckFlag = m_systemMaster.ConstructionNoBase;
+                }
+                else
+                {
+                    nCheckFlag = nConstrNoBase;
+                }
+
+                // å¯¾è±¡è¨­å®š
+                bool bPeriod = true;
+                switch (nCheckFlag)
+                {
+                    case (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod:
+                        bPeriod = true;
+                        break;
+                    case (int)SystemMaster.ConstrNoBaseDef.ConstructionYear:
+                        bPeriod = false;
+                        break;
+                }
+
                 if (bPeriod)
                 {   // å–¶æ¥­æœŸ
                     strSQL.Append(BizHisDB.CreatePrimarykeyString(nYear, (int)BizPeriodHistory.PeriodFlagDef.BizPeriod));
@@ -2966,7 +2999,7 @@
         /// ä»ŠæœŸã�®åˆ¤å®šã‚’è¡Œã�†
         /// </summary>
         /// <returns></returns>
-        private staticã€€bool CheckNowSeason(int nTarget)
+        public staticã€€bool CheckNowSeason(int nTarget)
         {
             try
             {
@@ -2993,7 +3026,7 @@
         /// éƒ¨ç½²ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ãƒ‡ãƒ¼ã‚¿å�–å¾—ï¼³ï¼±ï¼¬ä½œæˆ�
         /// </summary>
         /// <param name="strSQL"></param>
-        public static void CreateDepCombBoxSQL(ref StringBuilder strSQL, int nTargetCount)
+        public static void CreateDepCombBoxSQL(ref StringBuilder strSQL, int nTargetCount, bool bInput = false)
         {
             try
             {
@@ -3068,16 +3101,17 @@
                     strSQL.Append(") As A");
                 }
 
-                //strSQL.Append(", PERSONINCHARGEMASTER B");
-                strSQL.Append(", CONSTRUCTIONBASEINFO C");
-                strSQL.Append(" WHERE");
+                if (bNowSeason)
+                {   // å¯¾è±¡ã�Œä»ŠæœŸã�®å ´å�ˆ
+                    if (!bInput) strSQL.Append(", CONSTRUCTIONBASEINFO C");
+                    strSQL.Append(" WHERE");
 
-                if (bNowSeason)
-                {   // ä»ŠæœŸã�¯å‰Šé™¤ã�•ã‚Œã�¦ã�„ã�ªã�„ã‚‚ã�®
+                    // å‰Šé™¤ã�•ã‚Œã�¦ã�„ã�ªã�„ã‚‚ã�®
                     strSQL.Append(" A.DELETEFLG = 0");
                     DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(nTargetCount, false);
 
                     strSQL.AppendFormat(" And DATE(A.StartDate) <= DATE('{0}')", dtDefaultEnd.ToShortDateString());
+                    if (!bInput) strSQL.Append(" And C.ConstrDepCode = A.DepartmentCode");
 
                     // ã‚·ã‚¹ãƒ†ãƒ ç®¡ç�†è€…ä»¥å¤–ã�¯éƒ¨ç½²å�‚ç…§ãƒžã‚¹ã‚¿ã‚ˆã‚Šãƒ‡ãƒ¼ã‚¿å�–å¾—
                     if (CommonMotions.LoginUserData.PersonCode != CommonDefine.AdminCode)
@@ -3087,15 +3121,15 @@
                         strSQL.Append(" IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1");
                         strSQL.AppendFormat(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
                     }
-//                    strSQL.Append(" AND");
                 }
                 else
-                {
-                    strSQL.AppendFormat(" C.ConstructionPeriod = {0}", nTargetCount);
-                    strSQL.Append(" And A.DepartmentCode IN(C.SalesDepCode, C.ConstrDepCode, C.ConstrSubDepCode, C.ConstrInstrDepCode)");
+                {   // å¯¾è±¡ã�Œé�ŽåŽ»ã�®å ´å�ˆ
+                    strSQL.Append(", CONSTRUCTIONBASEINFO C");
+                    strSQL.Append(" WHERE");
+
+                    strSQL.AppendFormat(" (C.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append(" And A.DepartmentCode IN(C.SalesDepCode, C.ConstrDepCode, C.ConstrSubDepCode, C.ConstrInstrDepCode))");
                 }
-                //strSQL.Append(" A.DEPARTMENTCODE = B.DEPARTMENTCODE");
-                //strSQL.Append(" AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE");
                 strSQL.Append(" GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER");
                 strSQL.Append(" ORDER BY A.DISPLAYORDER ASC");
             }
@@ -3137,19 +3171,16 @@
                 else if (nLEDGERFLG > -1) strSQL.AppendFormat(" AND A.LEDGERFLG = {0}", nLEDGERFLG);
 
                 // ä»ŠæœŸã�®ãƒ‡ãƒ¼ã‚¿ã�‹ã�©ã�†ã�‹ã‚’åˆ¤å®šã�™ã‚‹
-                bool bNowSeason = true;
                 string FieldName = string.Empty;
                 if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
                 {
                     FieldName = "ConstructionPeriod";
-                    if (nTargetYear != CommonMotions.SystemMasterData.BusinessPeriod) bNowSeason = false;
                 }
                 else
                 {
                     FieldName = "ConstructionYear";
-                    if (nTargetYear != CommonMotions.SystemMasterData.ConstrYear) bNowSeason = false;
                 }
-                if (!bNowSeason)
+                if (!CheckNowSeason(nTargetYear))
                 {
                     strSQL.Append(" AND B.DepartmentCode IN(SELECT InDep.DEPARTMENTCODE FROM (");
                     strSQL.Append(" Select A1.SalesDepCode As DEPARTMENTCODE From Constructionbaseinfo As A1");
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 339)
@@ -14,7 +14,7 @@
         /// <summary>
         /// æœ¬ä½“ãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
         /// </summary>
-        public static int s_SystemVersion = 172;
+        public static int s_SystemVersion = 175;
 
         /// <summary>
         /// ã‚³ãƒ”ãƒ¼ãƒ»ç’°å¢ƒãƒ�ãƒ¼ã‚¸ãƒ§ãƒ³
Index: branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs	(revision 339)
@@ -530,6 +530,51 @@
         }
         #endregion
 
+        #region ã‚»ãƒ«è‰²ã‚»ãƒƒãƒˆ
+        public void ExcelCellColorSet(string FromColum, string ToColum, Color ForeColor, Color BackColor)
+        {
+            object xlsRange = null;
+            object[] Parameters = null;
+            object Fonts = null;
+            object Interior = null;
+            try
+            {
+                // ãƒ¬ãƒ³ã‚¸ã�§ã‚»ãƒ«ã‚’æŒ‡å®š
+                Parameters = new Object[2];
+                Parameters[0] = FromColum;
+                Parameters[1] = Missing.Value;
+                Parameters[1] = ToColum;
+                xlsRange = xlsWorkSheet.GetType().InvokeMember("Range"
+                                                                , BindingFlags.GetProperty
+                                                                , null
+                                                                , xlsWorkSheet
+                                                                , Parameters);
+
+                // èƒŒæ™¯è‰²ã‚’å¤‰æ›´ã�™ã‚‹ã€‚
+                Interior = xlsRange.GetType().InvokeMember("Interior", BindingFlags.GetProperty, null, xlsRange, null);
+                Interior.GetType().InvokeMember("Color", BindingFlags.SetProperty, null, Interior, new object[] { Color.FromArgb(BackColor.R
+                                                                                                                            , BackColor.G
+                                                                                                                            , BackColor.B) });
+
+                // ãƒ•ã‚©ãƒ³ãƒˆè‰²ã‚’å¤‰ã�ˆã‚‹
+                Fonts = xlsRange.GetType().InvokeMember("Font", BindingFlags.GetProperty, null, xlsRange, null);
+                Fonts.GetType().InvokeMember("Color", BindingFlags.SetProperty, null, Fonts, new object[] { Color.FromArgb(ForeColor.R
+                                                                                                                            , ForeColor.G
+                                                                                                                            , ForeColor.B) });
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", ex.Message, FromColum, ToColum);
+            }
+            finally
+            {
+                CommonMotions.ReleaseCom(ref xlsRange);
+                CommonMotions.ReleaseCom(ref Interior);
+                CommonMotions.ReleaseCom(ref Fonts);
+            }
+        }
+        #endregion
+
         #region ã‚·ãƒ¼ãƒˆã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆå�–å¾—
         /// <summary>
         /// ã‚·ãƒ¼ãƒˆã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆå�–å¾—
@@ -609,7 +654,7 @@
                                                 , BindingFlags.SetProperty
                                                 , null
                                                 , xlsApp
-                                                , new object[] { false });;
+                                                , new object[] { false });
                 if (xlsBooks != null)
                 {
                     CommonMotions.ReleaseCom(ref xlsBooks);
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs	(revision 339)
@@ -1015,44 +1015,12 @@
         /// <param name="bPeriod"></param>
         /// <param name="MinCode"></param>
         /// <param name="MaxCode"></param>
-        private void GetBaseCounstrYear(bool bPeriod, int PeriodValue, ref int MinCode, ref int MaxCode)
+        private void GetBaseCounstrYear(int PeriodValue, ref int MinCode, ref int MaxCode)
         {
             try
             {
-                int Beginning = 0;
-                int diffwork = 0;
-                string strwork = string.Empty;
-                if (bPeriod)
-                {   // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
-
-                    // ç�¾åœ¨æœŸã�¨ã�®å·®åˆ†ã‚’æ±‚ã‚�ã‚‹
-                    diffwork = PeriodValue - CommonMotions.SystemMasterData.BusinessPeriod;
-
-                    // æœŸé¦–æœˆã‚’å�–å¾—ã�™ã‚‹
-                    Beginning = CommonMotions.SystemMasterData.BusinessBeginDate.Month;
-                }
-                else
-                {   // ----- å–¶æ¥­å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
-
-                    // ç�¾åœ¨æœŸã�¨ã�®å·®åˆ†ã‚’æ±‚ã‚�ã‚‹
-                    diffwork = PeriodValue - CommonMotions.SystemMasterData.ConstrYear;
-
-                    // æœŸé¦–æœˆã‚’å�–å¾—ã�™ã‚‹
-                    Beginning = CommonMotions.SystemMasterData.ConstrBeginDate.Month;
-                }
-
-                // å¹´æ•°ã‚’æ±‚ã‚�ã‚‹
-                DateTime dateWork = DateTime.Now;
-                int nowMounth = DateTime.Now.Month;
-                // æœŸé¦–æœˆã‚’å¢ƒã�«å¹´åº¦ã‚’è¨ˆç®—ã�™ã‚‹
-                int iYear = 0;
-                if (nowMounth < Beginning)
-                    iYear = dateWork.AddYears(-1).Year;
-                else
-                    iYear = dateWork.Year;
-
                 // ãƒ™ãƒ¼ã‚¹å¹´ã‚’æ±‚ã‚�ã‚‹
-                MinCode = iYear + diffwork;
+                MinCode = CommonMotions.GetBaseCounstructionYear(PeriodValue);
                 // ãƒ™ãƒ¼ã‚¹å¹´ã�®ç¿Œå¹´ã‚’æ±‚ã‚�ã‚‹
                 MaxCode = MinCode + 1;
             }
@@ -1075,16 +1043,10 @@
                 int iRetCode = 0;
                 int MinCode = 0;
                 int MaxCode = 0;
-                // å–¶æ¥­æœŸãƒ»å·¥äº‹å¹´ã�¯ç®¡ç�†ãƒžã‚¹ã‚¿ã�®é�¸æŠžã�«ã‚ˆã‚Šè¨­å®šã�™ã‚‹
+
+                // ãƒ™ãƒ¼ã‚¹ã�¨ã�ªã‚‹å¹´åº¦ã‚’å�–å¾—ã�™ã‚‹
+                GetBaseCounstrYear(PeriodValue, ref MinCode, ref MaxCode);
                 StringBuilder strWhere = new StringBuilder();
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                {   // å–¶æ¥­æœŸ
-                    GetBaseCounstrYear(true, PeriodValue,ref MinCode, ref  MaxCode);
-                }
-                else
-                {   // å·¥äº‹å¹´åº¦
-                    GetBaseCounstrYear(false, PeriodValue, ref MinCode, ref  MaxCode);
-                }
                 strWhere.AppendFormat(" WHERE {0} <= CONSTRUCTIONCODE AND CONSTRUCTIONCODE < {1}", (MinCode * 1000000), (MaxCode * 1000000));
 
                 int icnt = SelectMaxConstructionCodeCount(strWhere.ToString());
@@ -1125,7 +1087,7 @@
             try
             {
                 int ConstructionCode = -1;
-                
+
                 // æž�ç•ªæœ€å¤§å€¤ã�®å·¥äº‹ç•ªå�·å�–å¾—
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append("SELECT IFNULL(MAX(CONSTRUCTIONCODE), -1) FROM CONSTRUCTIONBASEINFO");
@@ -1134,7 +1096,7 @@
 
                 // ãƒ‡ãƒ¼ã‚¿ã�Œç„¡ã�‘ã‚Œã�°æŠœã�‘ã‚‹
                 if (!cbDB.ExecuteReader(strSQL.ToString(), ref arList)) return ConstructionCode;
-                
+
                 object[] wrkobj = (object[])arList[0];
                 ConstructionCode = CommonMotions.cnvInt(wrkobj[0]);
                 if (ConstructionCode > 1) ConstructionCode++;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepartmentCostData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepartmentCostData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepartmentCostData.cs	(revision 339)
@@ -0,0 +1,470 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// éƒ¨ç½²æ¯Žå‡ºç´�ãƒ‡ãƒ¼ã‚¿ï¼¤ï¼¢ã‚¢ã‚¯ã‚»ã‚¹
+    /// </summary>
+    public class IODepartmentCostData : MySqlProcess
+    {
+        #region å®šç¾©éƒ¨
+        /// <summary>
+        /// log4netãƒ­ã‚°ã‚’ä½¿ç”¨ã�™ã‚‹
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region å®šæ•°
+        /// <summary>
+        /// æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ä¸¦ã�³
+        /// </summary>
+        public enum TableColumn
+        {
+            DepartmentCode = 0,     // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+            ConstructionPeriod,     // å·¥äº‹æœŸæ•°
+            DataCount,              // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+            EntryPersonCode,        // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+            SuppliersCode,          // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+            SuppliersName,          // æ”¯æ‰•å…ˆå��ç§°
+            PaymentContent,         // æ”¯æ‰•å†…å®¹
+            DateOfBilling,          // è«‹æ±‚æ—¥
+            DateOfPayment,          // æ”¯æ‰•æ—¥
+            EntryPrice,             // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+            EntryPriceInTax,        // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+            SlipNumber,             // ä¼�ç¥¨ç•ªå�·
+            ComplateFlg,            // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+            ApprovalFlg,            // æ‰¿èª�ãƒ•ãƒ©ã‚°
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// <summary>
+        /// ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IODepartmentCostData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region SQLä½œæˆ�
+        /// <summary>
+        /// SQLä½œæˆ�
+        /// </summary>
+        private string CreateSelectSQL()
+        {
+            // SQLä½œæˆ�
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+
+            strcmd.Append("  DepartmentCode");                          // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+            strcmd.Append(", ConstructionPeriod");                      // å·¥äº‹æœŸæ•°
+            strcmd.Append(", DataCount");                               // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+            strcmd.Append(", EntryPersonCode");                         // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+            strcmd.Append(", SuppliersCode");                           // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+            strcmd.Append(", SuppliersName");                           // æ”¯æ‰•å…ˆå��ç§°
+            strcmd.Append(", PaymentContent");                          // æ”¯æ‰•å†…å®¹
+            strcmd.Append(", DATE_FORMAT(DateOfBilling, '%Y/%m/%d')");  // è«‹æ±‚æ—¥
+            strcmd.Append(", DATE_FORMAT(DateOfPayment, '%Y/%m/%d')");  // æ”¯æ‰•æ—¥
+            strcmd.Append(", EntryPrice");                              // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+            strcmd.Append(", EntryPriceInTax");                         // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+            strcmd.Append(", SlipNumber");                              // ä¼�ç¥¨ç•ªå�·
+            strcmd.Append(", ComplateFlg");                             // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+            strcmd.Append(", ApprovalFlg");                             // æ‰¿èª�ãƒ•ãƒ©ã‚°
+
+            strcmd.Append(", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
+            strcmd.Append(", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+
+            strcmd.Append(" FROM DepartmentCostData");
+
+            return strcmd.ToString();
+        }
+        #endregion
+
+        #region è¤‡æ•°èª­è¾¼ã�¿å‡¦ç�†
+        /// <summary>
+        /// è¤‡æ•°èª­è¾¼ã�¿å‡¦ç�†
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref List<DepartmentCostData> data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQLä½œæˆ�
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    DepartmentCostData work = new DepartmentCostData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1ä»¶èª­è¾¼ã�¿å‡¦ç�†
+        /// <summary>
+        /// 1ä»¶èª­è¾¼ã�¿å‡¦ç�†
+        /// </summary>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref DepartmentCostData data, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd.Append(CreateSelectSQL());
+                strcmd.Append(AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    Reader2Struct(objwrk, ref data);
+                    break;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1ä»¶è¿½åŠ å‡¦ç�†
+        /// <summary>
+        /// æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿è¿½åŠ 
+        /// </summary>
+        /// <param name="data">æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool InsertAction(DepartmentCostData work, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO DepartmentCostData");
+                strcmd.Append(" (");
+                foreach (var gender in Enum.GetValues(typeof(TableColumn)))
+                {
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
+                    bColFirst = false;
+                }
+                strcmd.Append(") VALUES (");
+
+                strcmd.AppendFormat("  {0}", work.DepartmentCode);                  // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", {0}", work.ConstructionPeriod);              // å·¥äº‹æœŸæ•°
+                strcmd.AppendFormat(", {0}", work.DataCount);                       // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+                strcmd.AppendFormat(", {0}", work.EntryPersonCode);                 // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", {0}", work.SuppliersCode);                   // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", {0}", work.SuppliersName);                   // æ”¯æ‰•å…ˆå��ç§°
+                strcmd.AppendFormat(", {0}", work.PaymentContent);                  // æ”¯æ‰•å†…å®¹
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , work.DateOfBilling.ToShortDateString());  // è«‹æ±‚æ—¥
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , work.DateOfPayment.ToShortDateString());  // æ”¯æ‰•æ—¥
+                strcmd.AppendFormat(", {0}", work.EntryPrice);                      // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+                strcmd.AppendFormat(", {0}", work.EntryPriceInTax);                 // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+                strcmd.AppendFormat(", {0}", work.SlipNumber);                      // ä¼�ç¥¨ç•ªå�·
+                strcmd.AppendFormat(", {0}", work.ComplateFlg);                     // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+                strcmd.AppendFormat(", {0}", work.ApprovalFlg);                     // æ‰¿èª�ãƒ•ãƒ©ã‚°
+
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region è¤‡æ•°è¿½åŠ å‡¦ç�†
+        public bool InsertAction(List<DepartmentCostData> data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO DepartmentCostData");
+                strcmd.Append(" (");
+                foreach (var gender in Enum.GetValues(typeof(TableColumn)))
+                {
+                    if (!bColFirst) strcmd.Append(", ");
+                    strcmd.Append(gender.ToString());
+                    bColFirst = false;
+                }
+                strcmd.Append(") VALUES");
+
+                bool bDataFirst = true;
+                foreach (DepartmentCostData work in data)
+                {
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
+
+                    strcmd.AppendFormat("  {0}", work.DepartmentCode);                  // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+                    strcmd.AppendFormat(", {0}", work.ConstructionPeriod);              // å·¥äº‹æœŸæ•°
+                    strcmd.AppendFormat(", {0}", work.DataCount);                       // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+                    strcmd.AppendFormat(", {0}", work.EntryPersonCode);                 // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+                    strcmd.AppendFormat(", {0}", work.SuppliersCode);                   // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+                    strcmd.AppendFormat(", {0}", work.SuppliersName);                   // æ”¯æ‰•å…ˆå��ç§°
+                    strcmd.AppendFormat(", {0}", work.PaymentContent);                  // æ”¯æ‰•å†…å®¹
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                            , work.DateOfBilling.ToShortDateString());  // è«‹æ±‚æ—¥
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                            , work.DateOfPayment.ToShortDateString());  // æ”¯æ‰•æ—¥
+                    strcmd.AppendFormat(", {0}", work.EntryPrice);                      // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+                    strcmd.AppendFormat(", {0}", work.EntryPriceInTax);                 // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+                    strcmd.AppendFormat(", {0}", work.SlipNumber);                      // ä¼�ç¥¨ç•ªå�·
+                    strcmd.AppendFormat(", {0}", work.ComplateFlg);                     // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+                    strcmd.AppendFormat(", {0}", work.ApprovalFlg);                     // æ‰¿èª�ãƒ•ãƒ©ã‚°
+
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                    strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                    strcmd.Append(")");
+
+                    bDataFirst = false;
+                }
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region æ›´æ–°å‡¦ç�†
+        /// <summary>
+        /// æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿æ›´æ–°
+        /// </summary>
+        /// <param name="AddSQLString">æ›´æ–°æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool UpdateAction(string AddSQLString, DepartmentCostData data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("UPDATE DepartmentCostData");
+
+                strcmd.Append(" SET");
+
+                strcmd.AppendFormat(" DepartmentCode = {0}", data.DepartmentCode);              // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", ConstructionPeriod = {0}", data.ConstructionPeriod);     // å·¥äº‹æœŸæ•°
+                strcmd.AppendFormat(", DataCount = {0}", data.DataCount);                       // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+                strcmd.AppendFormat(", EntryPersonCode = {0}", data.EntryPersonCode);           // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", SuppliersCode = {0}", data.SuppliersCode);               // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+                strcmd.AppendFormat(", SuppliersName = {0}", data.SuppliersName);               // æ”¯æ‰•å…ˆå��ç§°
+                strcmd.AppendFormat(", PaymentContent = {0}", data.PaymentContent);             // æ”¯æ‰•å†…å®¹
+                strcmd.AppendFormat(", DateOfBilling = STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , data.DateOfBilling.ToShortDateString());              // è«‹æ±‚æ—¥
+                strcmd.AppendFormat(", DateOfPayment = STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , data.DateOfPayment.ToShortDateString());              // æ”¯æ‰•æ—¥
+                strcmd.AppendFormat(", EntryPrice = {0}", data.EntryPrice);                     // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+                strcmd.AppendFormat(", EntryPriceInTax = {0}", data.EntryPriceInTax);           // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+                strcmd.AppendFormat(", SlipNumber = {0}", data.SlipNumber);                     // ä¼�ç¥¨ç•ªå�·
+                strcmd.AppendFormat(", ComplateFlg = {0}", data.ComplateFlg);                   // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+                strcmd.AppendFormat(", ApprovalFlg = {0}", data.ApprovalFlg);                   // æ‰¿èª�ãƒ•ãƒ©ã‚°
+
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region å‰Šé™¤å‡¦ç�†
+        /// <summary>
+        /// æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
+        /// </summary>
+        /// <param name="AddSQLString">å‰Šé™¤æ�¡ä»¶SQLæ–‡å­—åˆ—</param>
+        /// <param name="data">æ‹…å½“è€…æ¯ŽçµŒè²»ãƒ‡ãƒ¼ã‚¿ãƒ‡ãƒ¼ã‚¿</param>
+        /// <returns>trueï¼šæˆ�åŠŸ falseï¼šå¤±æ•—</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                strcmd.AppendFormat("{0}{1}", "DELETE FROM DepartmentCostData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆå‡¦ç�†
+        /// <summary>
+        /// MySQLDataReaderã‚ˆã‚Šæ§‹é€ ä½“ã�¸ã‚»ãƒƒãƒˆã�™ã‚‹
+        /// </summary>
+        /// <param name="reader">MySQLDataReader</param>
+        /// <param name="wrk">æ§‹é€ ä½“</param>
+        public void Reader2Struct(object[] objwrk, ref DepartmentCostData wrk)
+        {
+            try
+            {
+                // ãƒ‡ãƒ¼ã‚¿å�–å¾—
+                wrk.DepartmentCode = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());          // éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+                wrk.ConstructionPeriod = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());      // å·¥äº‹æœŸæ•°
+                wrk.DataCount = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());               // ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+                wrk.EntryPersonCode = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());         // å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+                wrk.SuppliersCode = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());           // æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+                wrk.SuppliersName = objwrk[(int)TableColumn.EntryDate].ToString();                      // æ”¯æ‰•å…ˆå��ç§°
+                wrk.PaymentContent = objwrk[(int)TableColumn.EntryDate].ToString();                     // æ”¯æ‰•å†…å®¹
+                wrk.DateOfBilling = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());      // è«‹æ±‚æ—¥
+                wrk.DateOfPayment = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());      // æ”¯æ‰•æ—¥
+                wrk.EntryPrice = long.Parse(objwrk[(int)TableColumn.EntryDate].ToString());             // é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+                wrk.EntryPriceInTax = long.Parse(objwrk[(int)TableColumn.EntryDate].ToString());        // é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+                wrk.SlipNumber = objwrk[(int)TableColumn.EntryDate].ToString();                         // ä¼�ç¥¨ç•ªå�·
+                wrk.ComplateFlg = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());             // å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+                wrk.ApprovalFlg = int.Parse(objwrk[(int)TableColumn.EntryDate].ToString());             // æ‰¿èª�ãƒ•ãƒ©ã‚°
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ï¼­ï½™ï¼³ï¼±ï¼¬ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region æ¤œç´¢æ–‡å­—åˆ—ä½œæˆ�å‡¦ç�†
+        /// <summary>
+        /// ä¸»ã‚­ãƒ¼æ¤œç´¢ã�®æ–‡å­—åˆ—ã‚’è¿”ã�™
+        /// </summary>
+        /// <returns></returns>
+        public string CreatePrimarykeyString(int DepartmentCode, int ConstructionPeriod, int DataCount)
+        {
+            StringBuilder strWork = new StringBuilder();
+            try
+            {
+                strWork.AppendFormat(" WHERE DepartmentCode = {0}", DepartmentCode);
+                if (ConstructionPeriod > 0)
+                    strWork.AppendFormat(" AND ConstructionPeriod = {0}", ConstructionPeriod);
+                if (DataCount > 0)
+                    strWork.AppendFormat(" AND DataCount = {0}", DataCount);
+
+                return strWork.ToString();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strWork.ToString());
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region è¿½åŠ ç•ªå�·ã�®æœ€å¤§å€¤ã‚’å�–å¾—
+        /// <summary>
+        /// è¿½åŠ ç•ªå�·ã�®æœ€å¤§å€¤ã‚’å�–å¾—ã�™ã‚‹
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxAddDataCount(string AddSQLString, bool bConnect = true)
+        {
+            // ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹
+            StringBuilder strcmd = new StringBuilder();
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQLä½œæˆ�
+                strcmd.AppendFormat("SELECT IFNULL(MAX(DataCount), 0) FROM DepartmentCostData{0}", AddSQLString);
+
+                // SQLå®Ÿè¡Œ
+                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return iRet;
+
+                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals("null"))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}ï¼š{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+            }
+            return iRet;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentCostData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentCostData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentCostData.cs	(revision 339)
@@ -0,0 +1,219 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// éƒ¨ç½²æ¯Žå‡ºç´�ãƒ‡ãƒ¼ã‚¿
+    /// </summary>
+    public class DepartmentCostData
+    {
+        #region å®šæ•°
+        #endregion
+
+        #region ãƒ¡ãƒ³ãƒ�å¤‰æ•°
+        /// <summary>
+        /// éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        private int m_DepartmentCode = 0;
+        /// <summary>
+        /// å·¥äº‹æœŸæ•°
+        /// </summary>
+        private int m_ConstructionPeriod = 0;
+        /// <summary>
+        /// ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+        /// </summary>
+        private int m_DataCount = 0;
+        /// <summary>
+        /// å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        private int m_EntryPersonCode = 0;
+        /// <summary>
+        /// æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        private int m_SuppliersCode = 0;
+        /// <summary>
+        /// æ”¯æ‰•å…ˆå��ç§°
+        /// </summary>
+        private string m_SuppliersName = string.Empty;
+        /// <summary>
+        /// æ”¯æ‰•å†…å®¹
+        /// </summary>
+        private string m_PaymentContent = string.Empty;
+        /// <summary>
+        /// è«‹æ±‚æ—¥
+        /// </summary>
+        private DateTime m_DateOfBilling = DateTime.MinValue.Date;
+        /// <summary>
+        /// æ”¯æ‰•æ—¥
+        /// </summary>
+        private DateTime m_DateOfPayment = DateTime.MinValue.Date;
+        /// <summary>
+        /// é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+        /// </summary>
+        private long m_EntryPrice = 0;
+        /// <summary>
+        /// é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+        /// </summary>
+        private long m_EntryPriceInTax = 0;
+        /// <summary>
+        /// ä¼�ç¥¨ç•ªå�·
+        /// </summary>
+        private string m_SlipNumber = string.Empty;
+        /// <summary>
+        /// å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private int m_ComplateFlg = 0;
+        /// <summary>
+        /// æ‰¿èª�ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private int m_ApprovalFlg = 0;
+
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        private DateTime    m_EntryDate = DateTime.Now;
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        private DateTime    m_UpdateDate = DateTime.Now;
+        #endregion
+
+        #region ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿
+        #endregion
+
+        #region ãƒ—ãƒ­ãƒ‘ãƒ†ã‚£
+        /// <summary>
+        /// éƒ¨ç½²ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        public int DepartmentCode
+        {
+            get { return m_DepartmentCode; }
+            set { m_DepartmentCode = value; }
+        }
+        /// <summary>
+        /// å·¥äº‹æœŸæ•°
+        /// </summary>
+        public int ConstructionPeriod
+        {
+            get { return m_ConstructionPeriod; }
+            set { m_ConstructionPeriod = value; }
+        }
+        /// <summary>
+        /// ãƒ‡ãƒ¼ã‚¿ç•ªå�·
+        /// </summary>
+        public int DataCount
+        {
+            get { return m_DataCount; }
+            set { m_DataCount = value; }
+        }
+        /// <summary>
+        /// å…¥åŠ›æ‹…å½“è€…ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        public int EntryPersonCode
+        {
+            get { return m_EntryPersonCode; }
+            set { m_EntryPersonCode = value; }
+        }
+        /// <summary>
+        /// æ”¯æ‰•å…ˆã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        public int SuppliersCode
+        {
+            get { return m_SuppliersCode; }
+            set { m_SuppliersCode = value; }
+        }
+        /// <summary>
+        /// æ”¯æ‰•å…ˆå��ç§°
+        /// </summary>
+        public string SuppliersName
+        {
+            get { return m_SuppliersName; }
+            set { m_SuppliersName = value; }
+        }
+        /// <summary>
+        /// æ”¯æ‰•å†…å®¹
+        /// </summary>
+        public string PaymentContent
+        {
+            get { return m_PaymentContent; }
+            set { m_PaymentContent = value; }
+        }
+        /// <summary>
+        /// è«‹æ±‚æ—¥
+        /// </summary>
+        public DateTime DateOfBilling
+        {
+            get { return m_DateOfBilling; }
+            set { m_DateOfBilling = value; }
+        }
+        /// <summary>
+        /// æ”¯æ‰•æ—¥
+        /// </summary>
+        public DateTime DateOfPayment
+        {
+            get { return m_DateOfPayment; }
+            set { m_DateOfPayment = value; }
+        }
+        /// <summary>
+        /// é‡‘é¡�ï¼ˆç¨ŽæŠœï¼‰
+        /// </summary>
+        public long EntryPrice
+        {
+            get { return m_EntryPrice; }
+            set { m_EntryPrice = value; }
+        }
+        /// <summary>
+        /// é‡‘é¡�ï¼ˆç¨Žè¾¼ï¼‰
+        /// </summary>
+        public long EntryPriceInTax
+        {
+            get { return m_EntryPriceInTax; }
+            set { m_EntryPriceInTax = value; }
+        }
+        /// <summary>
+        /// ä¼�ç¥¨ç•ªå�·
+        /// </summary>
+        public string SlipNumber
+        {
+            get { return m_SlipNumber; }
+            set { m_SlipNumber = value; }
+        }
+        /// <summary>
+        /// å¼•è¾¼æ¸ˆã�¿ãƒ•ãƒ©ã‚°
+        /// </summary>
+        public int ComplateFlg
+        {
+            get { return m_ComplateFlg; }
+            set { m_ComplateFlg = value; }
+        }
+        /// <summary>
+        /// æ‰¿èª�ãƒ•ãƒ©ã‚°
+        /// </summary>
+        public int ApprovalFlg
+        {
+            get { return m_ApprovalFlg; }
+            set { m_ApprovalFlg = value; }
+        }
+
+        /// <summary>
+        /// ç™»éŒ²æ—¥ä»˜
+        /// </summary>
+        public DateTime EntryDate
+        {
+            set { m_EntryDate = value; }
+            get { return m_EntryDate; }
+        }
+        /// <summary>
+        /// æ›´æ–°æ—¥ä»˜
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            set { m_UpdateDate = value; }
+            get { return m_UpdateDate; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentMaster.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DepartmentMaster.cs	(revision 339)
@@ -17,7 +17,7 @@
         private int         m_ActionScheduleFlg = 0;	        // è¡Œå‹•äºˆå®šè¡¨ç¤ºãƒ•ãƒ©ã‚°
         private int         m_StaffAssignFlg = 0;               // äººå“¡é…�ç½®è¡¨ç¤ºãƒ•ãƒ©ã‚°
         private DateTime    m_StartDate = DateTime.Now;         // é–‹å§‹æ—¥ä»˜
-        private DateTime    m_CompDate = DateTime.MinValue;     // çµ‚äº†æ—¥ä»˜
+        private DateTime    m_CompDate = DateTime.MinValue;     // çµ‚äº†æ—¥ä»˜
         private int         m_DeleteFlg = 0;	                // å‰Šé™¤ãƒ•ãƒ©ã‚°
         private DateTime    m_EntryDate = DateTime.Now;         // ç™»éŒ²æ—¥ä»˜
         private DateTime    m_UpdateDate = DateTime.Now;        // æ›´æ–°æ—¥ä»˜
@@ -90,7 +90,7 @@
         {
             get { return m_CompDate; }
             set { m_CompDate = value; }
-        }
+        }
         /// <summary>
         /// ç™»éŒ²æ—¥ä»˜
         /// </summary>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 339)
@@ -297,7 +297,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -402,7 +402,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -1213,10 +1213,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -1234,15 +1234,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -1290,7 +1281,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 339)
@@ -1452,10 +1452,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -1473,15 +1473,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -2100,7 +2091,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -2156,7 +2147,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -2213,7 +2204,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 339)
@@ -2179,14 +2179,13 @@
                 {
                     // �HŽ–Šú
                     nTarget = CommonMotions.cnvInt(m_DspCtrl[(int)DspCnt.ConstructionPeriod].Text);
-                    if (nTarget < 1) nTarget = CommonMotions.SystemMasterData.BusinessPeriod;
                 }
                 else
                 {
                     // �HŽ–”N“x
                     nTarget = CommonMotions.cnvInt(m_DspCtrl[(int)DspCnt.ConstructionYear].Text);
-                    if (nTarget < 1) nTarget = CommonMotions.SystemMasterData.ConstrYear;
                 }
+                if (nTarget < 1) nTarget = CommonMotions.GetPeriodYear();
 
                 return nTarget;
             }
@@ -2487,7 +2486,7 @@
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 int nPeriod = GetTargetYear();
                 StringBuilder strSQL = new StringBuilder();
-                CommonMotions.CreateDepCombBoxSQL(ref strSQL, nPeriod);
+                CommonMotions.CreateDepCombBoxSQL(ref strSQL, nPeriod, true);
 
                 ArrayList dmList = new ArrayList();
                 // •”��ƒ}ƒXƒ^“Ç�ž
@@ -5222,14 +5221,10 @@
                 int iYear = 0;
                 int month = 0;
                 int day = 0;
-                bool bPeriod = true;
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                {   // ‰c‹ÆŠú
-                    bPeriod = true;
-                }
-                dtStart = CommonMotions.GetOpeningEndDate(Period, true, bPeriod);
-                dtEnd = CommonMotions.GetOpeningEndDate(Period, false, bPeriod);
 
+                dtStart = CommonMotions.GetOpeningEndDate(Period, true);
+                dtEnd = CommonMotions.GetOpeningEndDate(Period, false);
+
                 // Ž{�HŠúŠÔŽæ“¾
                 DateTime dtCStart = CommonMotions.cnvDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart].Text);     // 48: Œ_–ñ�HŠúŠJŽn
                 DateTime dtCStart2 = CommonMotions.cnvDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart2].Text);   // 62: Œ_–ñ�HŠúŠJŽn�i‰„’·Žž�j
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 339)
@@ -1188,7 +1188,7 @@
                 string strSQL = "SELECT A.TYPECODE, A.NAMESTRING, A.EXPENSESLINK, B.NAMECODE, B.EXPENSESRAITO";
                 strSQL += " FROM CONSTRUCTIONTYPEMASTER A";
                 strSQL += " LEFT JOIN TYPEEXPENSESMASTER B ON B.TYPECODE = A.TYPECODE";
-                strSQL += string.Format(" AND B.EXPENSESPERIOD = {0}", CommonMotions.SystemMasterData.BusinessPeriod);
+                strSQL += string.Format(" AND B.EXPENSESPERIOD = {0}", CommonMotions.GetPeriodYear());
                 strSQL += string.Format(" WHERE A.TYPECODE = {0} AND A.EXPENSESLINK = 1", m_ConstructionBaseInfo.ConstructionType);
 
                 ArrayList arList = new ArrayList();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs	(revision 339)
@@ -265,7 +265,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // éƒ¨ç½²ãƒžã‚¹ã‚¿ã‚’æ¤œç´¢ã�™ã‚‹
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -321,7 +321,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -379,7 +379,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
@@ -432,10 +432,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
@@ -1101,18 +1101,8 @@
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             try
             {
-                int PeriodValue = 0;
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                {   // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
-                    // æœŸæ•°ã‚’ã‚»ãƒƒãƒˆ
-                    PeriodValue = CommonMotions.SystemMasterData.BusinessPeriod;
-                }
-                else
-                {   // ----- å–¶æ¥­å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
-
-                    // å–¶æ¥­å¹´ã‚’ã‚»ãƒƒãƒˆ
-                    PeriodValue = CommonMotions.SystemMasterData.ConstrYear;
-                }
+                // å¹´ã‚’å�–å¾—ã�™ã‚‹
+                int PeriodValue = CommonMotions.GetPeriodYear();
                 // å·¥äº‹ç•ªå�·ã‚’ä½œæˆ�ã�™ã‚‹
                 return BaseDB.CreateNewCounstructionCode(PeriodValue);
             }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 339)
@@ -385,24 +385,12 @@
                 DataGridView dgv = dgvMaster;
 
                 int NowPoint = ClsExcute.GetNowProcessPoint();
-                // ˆê”ÊŽg—pŽÒ‚Í‹‹—^‚Ì—“‚ªŒ©‚¦‚È‚¢‚æ‚¤‚É‚·‚é
-                // �VƒZƒLƒ…ƒŠƒeƒBƒf�[ƒ^‘Î‰ž�Ï‚Ý‚©‚ðŠm”F‚·‚é
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                // ˆê”ÊŽg—pŽÒ‚Í‹‹—^‚Ì—“‚ªŒ©‚¦‚È‚¢‚æ‚¤‚É‚·‚é�i‹‹—^—“‚ÍŒ»�Ý”ñ•\Ž¦�j
+                if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
                 {
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                    {
-                        dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
-                        m_CellSize[(int)DispColumn.Allowance] = 0;
-                    }
+                    dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
+                    m_CellSize[(int)DispColumn.Allowance] = 0;
                 }
-                else
-                {
-                    if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
-                    {
-                        dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
-                        m_CellSize[(int)DispColumn.Allowance] = 0;
-                    }
-                }
 
                 // ƒf�[ƒ^•\Ž¦
                 DataDisplay();
@@ -1550,7 +1538,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -1606,7 +1594,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -1662,7 +1650,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
@@ -1788,10 +1776,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -1809,15 +1797,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 int NowPoint = ClsExcute.GetNowProcessPoint();
 
                 // �‰Šú•\Ž¦Žž‚É‘¼‚Ì‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ��[ƒ^‚ª‚ ‚Á‚½�ê�‡
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSerarch/FrmConstrSerarchAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSerarch/FrmConstrSerarchAux.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSerarch/FrmConstrSerarchAux.cs	(revision 339)
@@ -84,7 +84,7 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
                 numUDConstPro.Value = m_Period;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs	(revision 339)
@@ -196,7 +196,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // éƒ¨ç½²ãƒžã‚¹ã‚¿ã‚’æ¤œç´¢ã�™ã‚‹
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -252,7 +252,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -308,7 +308,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
@@ -361,10 +361,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
@@ -686,18 +686,8 @@
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             try
             {
-                int PeriodValue = 0;
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                {   // ----- å–¶æ¥­æœŸãƒ™ãƒ¼ã‚¹ã�®æ™‚
-                    // æœŸæ•°ã‚’ã‚»ãƒƒãƒˆ
-                    PeriodValue = CommonMotions.SystemMasterData.BusinessPeriod;
-                }
-                else
-                {   // ----- å–¶æ¥­å¹´åº¦ãƒ™ãƒ¼ã‚¹ã�®æ™‚
-
-                    // å–¶æ¥­å¹´ã‚’ã‚»ãƒƒãƒˆ
-                    PeriodValue = CommonMotions.SystemMasterData.ConstrYear;
-                }
+                // å¹´ã‚’å�–å¾—ã�™ã‚‹
+                int PeriodValue = CommonMotions.GetPeriodYear();
                 // å·¥äº‹ç•ªå�·ã‚’ä½œæˆ�ã�™ã‚‹
                 return BaseDB.CreateNewCounstructionCode(PeriodValue);
             }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 339)
@@ -52,10 +52,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -662,7 +662,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -718,7 +718,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -774,7 +774,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs	(revision 339)
@@ -648,7 +648,7 @@
                 if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
                 {
                     // æœŸæ•°ã‚»ãƒƒãƒˆï¼ˆ-2å¹´ï½ž+2å¹´ï¼‰
-                    int NowPeriod = CommonMotions.SystemMasterData.BusinessPeriod;
+                    int NowPeriod = CommonMotions.GetPeriodYear();
                     if (NowPeriod > 2) cmbConstructionPeriod.Items.Add((NowPeriod - 2).ToString());
                     if (NowPeriod > 1) cmbConstructionPeriod.Items.Add((NowPeriod - 1).ToString());
                     cmbConstructionPeriod.Items.Add(NowPeriod.ToString());
@@ -666,7 +666,7 @@
                 else
                 {
                     label7.Text = "å–¶æ¥­å¹´åº¦";
-                    int NowYear = CommonMotions.SystemMasterData.ConstrYear;
+                    int NowYear = CommonMotions.GetPeriodYear();
 
                     cmbConstructionPeriod.Items.Add((NowYear - 2).ToString());
                     cmbConstructionPeriod.Items.Add((NowYear - 1).ToString());
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistAuxiliary.cs	(revision 339)
@@ -312,7 +312,7 @@
                     // ã‚­ãƒ¼é …ç›®ã‚»ãƒƒãƒˆ
                     RegRec.CreatePersonCode = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.CreatePersonCode].Text);
                     RegRec.CreateDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.CreateDate].Text);
-                    RegRec.PetitionPeriod = CommonMotions.SystemMasterData.BusinessPeriod;
+                    RegRec.PetitionPeriod = CommonMotions.GetPeriodYear();
 
                     // ç”³è«‹é€£ç•ªå�–å¾—
                     strSQL = crDB.CreatePrimarykeyString(RegRec.CreatePersonCode, RegRec.CreateDate);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostomerRegist/FrmCostomerRegistListAuxiliary.cs	(revision 339)
@@ -46,10 +46,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
@@ -625,7 +625,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -681,7 +681,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -737,7 +737,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs	(revision 339)
@@ -787,10 +787,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -812,10 +812,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
@@ -865,7 +865,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -921,7 +921,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -978,7 +978,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 339)
@@ -391,10 +391,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -444,10 +444,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆŠúƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
                 m_initDataLoad = false;
             }
             catch (Exception ex)
@@ -477,7 +477,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.cs	(revision 339)
@@ -0,0 +1,650 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+//*---------------------------- •”��•Ê�o”[ˆê——‰æ–Ê ----------------------------*
+//  2017/04/06  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmDepartmentCost : Form
+    {
+        #region Žg—p’è‹`
+        //log4netƒ�ƒO‚ðŽg—p‚·‚é
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region ’è�”
+        #region •\Ž¦ƒJƒ‰ƒ€
+        /// <summary>
+        /// •\Ž¦ƒJƒ‰ƒ€
+        /// </summary>
+        private enum DispColumn
+        {
+            /// <summary>
+            /// ‡‚
+            /// </summary>
+            No = 0,
+            /// <summary>
+            /// •”��ƒR�[ƒh
+            /// </summary>
+            DepartmentCode,
+            /// <summary>
+            /// •”��–¼
+            /// </summary>
+            DepartmentName,
+            /// <summary>
+            /// �o”[‹àŠz
+            /// </summary>
+            PaymentValue,
+        }
+        #endregion
+
+        #region �s‘I‘ð�F
+        /// <summary>
+        /// �s‘I‘ð�F
+        /// </summary>
+        private static Color s_RowSelectBackColor = Color.Blue;
+        private static Color s_RowSelectForeColor = Color.White;
+        #endregion
+
+        #region �‡Œv�s�F
+        /// <summary>
+        /// �‡Œv�s�F
+        /// </summary>
+        private static Color s_RowTotalBackColor = Color.Black;
+        private static Color s_RowTotalForeColor = Color.White;
+        #endregion
+
+        #region �sƒ^ƒCƒgƒ‹
+        /// <summary>
+        /// �sƒ^ƒCƒgƒ‹•À‚Ñ�‡
+        /// </summary>
+        private enum RowTitleNum
+        {
+            /// <summary>
+            /// Ž{�H’†�‡Œv
+            /// </summary>
+            Execution = 0,
+            /// <summary>
+            /// Š®—¹�ÏŒv
+            /// </summary>
+            Completed,
+            /// <summary>
+            /// ‘S�HŽ–Œv
+            /// </summary>
+            AllConstrutions,
+            /// <summary>
+            /// Œo”ï�‡Œv
+            /// </summary>
+            Expenses,
+            /// <summary>
+            /// •â�•�U•ªŒv
+            /// </summary>
+            Auxiliary,
+            /// <summary>
+            /// ‘��‡Œv
+            /// </summary>
+            AllTotal,
+        }
+
+        /// <summary>
+        /// �‡Œv�sƒ^ƒCƒgƒ‹
+        /// </summary>
+        private static string[] s_TotalTitleArray = new string[] {  "�–Ž{�@�H�@’†�@�‡�@Œv�–",
+                                                                    "�–Š®�@—¹�@�Ï�@�‡�@Œv�–",
+                                                                    "�–‘S�@�H�@Ž–�@�‡�@Œv�–",
+                                                                    "�–�@Œo�@�@”ï�@�@Œv�@�–",
+                                                                    "�–�l Œ� ”ï �U •ª Œv�–",
+                                                                    "�–�–�@‘��@�‡�@Œv�@�–�–",
+                                                                };
+        #endregion
+
+        #region ƒOƒŠƒbƒh�€–Ú�sƒ^ƒCƒgƒ‹
+        /// <summary>
+        /// ƒOƒŠƒbƒh�€–Ú�sƒ^ƒCƒgƒ‹
+        /// </summary>
+        private static string[] s_GroupTitle = new string[] {" •›’S“–ŽÒŽû‰v ",
+                                                             "  Žw“±ˆõŽû‰v  ",
+                                                             "’S“–ŽÒ‹‹—^�·Šz"};
+        #endregion
+
+        #endregion
+
+        #region •Ï�”
+        /// <summary>
+        /// �‰ŠúŽžƒtƒ‰ƒO
+        /// </summary>
+        private bool m_initDataLoad = true;
+
+        /// <summary>
+        /// ‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        private int m_ExecuteFlg = 0;
+
+        /// <summary>
+        /// ƒf�[ƒ^’Ç‰Áƒ{ƒ^ƒ“•\Ž¦ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_DataAddtionButton = false;
+        /// <summary>
+        /// �I—¹ƒ{ƒ^ƒ“‰Ÿ‰ºƒtƒ‰ƒO
+        /// </summary>
+        private bool m_CloseingProcessOff = false;
+
+        #region ƒOƒŠƒbƒhƒJƒ‰ƒ€ƒTƒCƒY
+        /// <summary>
+        /// ƒOƒŠƒbƒhƒJƒ‰ƒ€ƒTƒCƒY
+        /// </summary>
+        int[] m_CellSize = null;
+        #endregion
+
+        #region ƒtƒH�[ƒ€•�
+        /// <summary>
+        /// ƒtƒH�[ƒ€•�
+        /// </summary>
+        private int m_FormWidthSize = 0;
+        #endregion
+
+        #region ‘�ŒvƒOƒŠƒbƒh•�ƒTƒCƒY
+        /// <summary>
+        /// ‘�ŒvƒOƒŠƒbƒh•�ƒTƒCƒY
+        /// </summary>
+        private int m_GridWidthSize = 0;
+        #endregion
+
+        #region �‰Šú‘I‘ð–³‚µƒtƒ‰ƒO
+        /// <summary>
+        /// �‰Šú‘I‘ð–³‚µƒtƒ‰ƒO
+        /// </summary>
+        private bool m_FirstStartFlg = true;
+        #endregion
+
+        #region �‰Šú‘I‘ð”N“x
+        /// <summary>
+        /// �‰Šú‘I‘ð”N“x
+        /// </summary>
+        private int m_FirstStartPeriod = 0;
+        #endregion
+
+        #region �‰Šú‘I‘ð•”��ƒR�[ƒh
+        /// <summary>
+        /// �‰Šú‘I‘ð•”��ƒR�[ƒh
+        /// </summary>
+        private int m_FirstStartDepartmentCode = CommonMotions.LoginUserData.DepartmentCode;
+        #endregion
+
+        #region �‰Šú‘I‘ð’S“–ŽÒƒR�[ƒh
+        /// <summary>
+        /// �‰Šú‘I‘ð’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        private int m_FirstStartPersonCode = CommonMotions.LoginUserData.PersonCode;
+        #endregion
+
+        #region ŽŸƒvƒ�ƒZƒX‹N“®ƒtƒ‰ƒO
+        /// <summary>
+        /// ŽŸƒvƒ�ƒZƒX‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_NextProcFlg = false;
+        #endregion
+
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        /// <summary>
+        /// ŒÄ�oŒ³�I—¹ƒtƒ‰ƒO
+        /// </summary>
+        private bool m_ParentEnd = false;
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+
+        /// <summary>
+        /// �I—¹ƒ{ƒ^ƒ“‰Ÿ‰ºƒtƒ‰ƒO
+        /// </summary>
+        private bool m_CloseingProcessOn = true;
+
+        /// <summary>
+        /// ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// ŠY“–�HŽ–Šî–{�î•ñ
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+
+        /// <summary>
+        /// ŠY“–�HŽ–’S“–ŽÒ
+        /// </summary>
+        private PersonInChargeMaster m_PersonInChargeMaster = new PersonInChargeMaster();
+        #endregion
+
+        #region ƒvƒ�ƒpƒeƒB
+
+        #region ‹N“®ƒtƒ‰ƒO
+        /// <summary>
+        /// ‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        public int ExecuteFlg
+        {
+            get { return m_ExecuteFlg; }
+            set { m_ExecuteFlg = value; }
+        }
+        #endregion
+
+        #region ƒf�[ƒ^’Ç‰Áƒ{ƒ^ƒ“•\Ž¦
+        /// <summary>
+        /// ƒf�[ƒ^’Ç‰Áƒ{ƒ^ƒ“•\Ž¦
+        /// </summary>
+        public bool DataAddtionButton
+        {
+            get { return m_DataAddtionButton; }
+            set { m_DataAddtionButton = value; }
+        }
+        #endregion
+
+        #region �‰Šú‘I‘ð–³‚µƒtƒ‰ƒO
+        /// <summary>
+        /// �‰Šú‘I‘ð–³‚µƒtƒ‰ƒO
+        /// </summary>
+        public bool FirstStartFlg
+        {
+            get { return m_FirstStartFlg; }
+            set { m_FirstStartFlg = value; }
+        }
+        #endregion
+
+        #region �‰Šú‘I‘ð”N“x
+        /// <summary>
+        /// �‰Šú‘I‘ð”N“x
+        /// </summary>
+        public int FirstStartPeriod
+        {
+            get { return m_FirstStartPeriod; }
+            set { m_FirstStartPeriod = value; }
+        }
+        #endregion
+
+        #region �‰Šú‘I‘ð•”��ƒR�[ƒh
+        /// <summary>
+        /// �‰Šú‘I‘ð•”��ƒR�[ƒh
+        /// </summary>
+        public int FirstStartDepartmentCode
+        {
+            get { return m_FirstStartDepartmentCode; }
+            set { m_FirstStartDepartmentCode = value; }
+        }
+        #endregion
+
+        #region �‰Šú‘I‘ð’S“–ŽÒƒR�[ƒh
+        /// <summary>
+        /// �‰Šú‘I‘ð’S“–ŽÒƒR�[ƒh
+        /// </summary>
+        public int FirstStartPersonCode
+        {
+            get { return m_FirstStartPersonCode; }
+            set { m_FirstStartPersonCode = value; }
+        }
+        #endregion
+
+        #region ŽŸƒvƒ�ƒZƒX‹N“®ƒtƒ‰ƒO
+        /// <summary>
+        /// ŽŸƒvƒ�ƒZƒX‹N“®ƒtƒ‰ƒO
+        /// </summary>
+        public bool NextProcFlg
+        {
+            get { return m_NextProcFlg; }
+            set { m_NextProcFlg = value; }
+        }
+        #endregion
+
+        /// <summary>
+        /// ƒAƒNƒZƒX�§ŒÀƒtƒ‰ƒO
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+        /// <summary>
+        /// ŒÄ�oŒ³�I—¹ƒtƒ‰ƒO
+        /// </summary>
+        public bool ParentEnd
+        {
+            get { return m_ParentEnd; }
+            set { m_ParentEnd = value; }
+        }
+        // *-----* ‹¤’Ê�ˆ—��Ý’è *-----*
+
+        /// <summary>
+        /// �I—¹ƒ{ƒ^ƒ“‰Ÿ‰ºƒtƒ‰ƒO
+        /// </summary>
+        public bool CloseingProcessOn
+        {
+            get { return m_CloseingProcessOn; }
+            set { m_CloseingProcessOn = value; }
+        }
+        #endregion
+
+        #region ƒRƒ“ƒXƒgƒ‰ƒNƒ^
+        public FrmDepartmentCost()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region ƒfƒXƒgƒ‰ƒNƒ^
+        ~FrmDepartmentCost()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �~ƒ{ƒ^ƒ“
+        /// <summary>
+        /// �~ƒ{ƒ^ƒ“‰Ÿ‰º�ˆ—�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionLedgerList_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                if (m_CloseingProcessOff) return;
+
+                // ‘Oƒvƒ�ƒZƒX‚É–ß‚é
+                ClsExcute.BackProcess();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �I—¹ƒ{ƒ^ƒ“
+        /// <summary>
+        /// �I—¹ƒ{ƒ^ƒ“ƒNƒŠƒbƒN
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region ƒtƒH�[ƒ€ƒ��[ƒh
+        /// <summary>
+        /// �‰ŠúƒtƒH�[ƒ€ƒ��[ƒh
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmDepartmentCost_Load(object sender, EventArgs e)
+        {
+            SetInitnumUDConstPro();
+            // ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒZƒbƒg
+            SetcmbDepartment();
+
+            // ƒOƒŠƒbƒh�‰Šú�Ý’è
+            SetDisplayObject();
+
+            // ƒ�ƒOƒCƒ“ŽÒ‚ÌƒZƒbƒg
+            InitDepPersonCode();
+
+            // �‰Šú•\Ž¦
+            InitDataLoad();
+
+            m_initDataLoad = false;
+        }
+        #endregion
+
+        #region ƒZƒ‹ƒ_ƒuƒ‹ƒNƒŠƒbƒN
+        /// <summary>
+        /// ƒZƒ‹ƒ_ƒuƒ‹ƒNƒŠƒbƒN
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            if (e.RowIndex < 0) return;
+
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow CurRow = dgv.CurrentRow;
+
+            // ƒf�[ƒ^‚ª‚È‚¢�ê�‡‚Í”²‚¯‚é
+            if (dgv.RowCount == 0) return;
+
+            if (CommonMotions.chkCellBlank(CurRow.Cells[(int)DispColumn.DepartmentCode].Value)) return;
+
+            // Še�ˆ—�‹N“®
+            SubProcessExecute(CommonMotions.cnvInt(CurRow.Cells[(int)DispColumn.DepartmentCode].Value));
+        }
+        #endregion
+
+        #region EntryƒL�[‚Å‚ÌˆÚ“®�ˆ—�
+        /// <summary>
+        /// EntryƒL�[‚Å‚ÌˆÚ“®�ˆ—�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionLedgerList_KeyDown(object sender, KeyEventArgs e)
+        {
+            //EnterƒL�[‚ª‰Ÿ‚³‚ê‚Ä‚¢‚é‚©Šm”F
+            //Alt‚©CtrlƒL�[‚ª‰Ÿ‚³‚ê‚Ä‚¢‚éŽž‚Í–³Ž‹‚·‚é
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //‚ ‚½‚©‚àTabƒL�[‚ª‰Ÿ‚³‚ê‚½‚©‚Ì‚æ‚¤‚É‚·‚é
+                //Shift‚ª‰Ÿ‚³‚ê‚Ä‚¢‚éŽž‚Í‘O‚ÌƒRƒ“ƒgƒ��[ƒ‹‚ÌƒtƒH�[ƒJƒX‚ðˆÚ“®
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0ˆÈ�~
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+        #region ƒf�[ƒ^ƒRƒs�[
+        /// <summary>
+        /// ƒf�[ƒ^ƒRƒs�[‹@”\
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataCopy_Click(object sender, EventArgs e)
+        {
+            // ŽŸ‹N“®ƒvƒ�ƒZƒXƒZƒbƒg
+            int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionCopyList);
+            // Š®—¹�HŽ–ˆê——
+            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(0);
+
+            // ƒNƒ��[ƒY�ˆ—�‚ðOFF‚É‚·‚é�B
+            m_CloseingProcessOff = true;
+            // ‰æ–ÊƒNƒ��[ƒY
+            this.Close();
+        }
+        #endregion
+
+        #region ‰c‹ÆŠúƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+        /// <summary>
+        /// ‰c‹ÆŠú•Ï�X
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+            SetcmbDepartment();
+
+            // ƒf�[ƒ^•\Ž¦
+            DataDisplay();
+        }
+        #endregion
+
+        #region •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX•Ï�X
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // ƒf�[ƒ^•\Ž¦
+            DataDisplay();
+        }
+        #endregion
+
+        #region ƒtƒH�[ƒ€ƒTƒCƒY•Ï�X
+        /// <summary>
+        /// ƒtƒH�[ƒ€ƒTƒCƒY•Ï�X
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionLedgerList_SizeChanged(object sender, EventArgs e)
+        {
+            if (this.WindowState == FormWindowState.Minimized)
+            {
+                // �Å�¬‰»
+            }
+            else if (this.WindowState == FormWindowState.Maximized)
+            {
+                // �Å‘å‰»
+                CellSizeChangesWhenChangingScreenSize(false);
+            }
+            else if (this.WindowState == FormWindowState.Normal)
+            {
+                // •W�€‰»
+                CellSizeChangesWhenChangingScreenSize(true);
+            }
+        }
+        #endregion
+
+        #region ƒOƒŠƒbƒhƒ}ƒEƒXƒAƒbƒv
+        /// <summary>
+        /// ƒOƒŠƒbƒhƒ}ƒEƒXƒAƒbƒv
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_MouseUp(object sender, MouseEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                lblCellTotal.Text = string.Empty;
+
+                double dTotal = 0;
+                int DataCnt = 0;
+                int NumericCnt = 0;
+                foreach (DataGridViewCell c in dgv.SelectedCells)
+                {
+                    if (CommonMotions.chkObjectIsNull(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex])) continue;
+                    if (CommonMotions.chkCellBlank(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) continue;
+
+                    //Console.WriteLine("{0}, {1}", c.ColumnIndex, c.RowIndex);
+                    DataCnt++;
+                    dTotal += CommonMotions.cnvDouble(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value);
+                    if (CommonMotions.chkNumeric(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) NumericCnt++;
+                }
+                if (DataCnt <= 1 || dTotal == 0 || NumericCnt == 0) return;
+                string strTotal = CommonMotions.cnvTruncate(dTotal).ToString("#,#");
+                if (dTotal - System.Math.Floor(dTotal) != 0) strTotal = dTotal.ToString("#,#.00");
+
+                string strwrkData = string.Format(CommonDefine.s_CalculateCellFormat,
+                                                    CommonMotions.cnvTruncate(dTotal / (double)NumericCnt).ToString("#,#"),
+                                                    DataCnt.ToString("#,#"),
+                                                    strTotal);
+                lblCellTotal.Text = strwrkData;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        // ƒZƒ‹‘I‘ð�s
+        int m_BeforeGridRow = -1;
+        #region ƒZƒ‹‘I‘ð•Ï�X
+        /// <summary>
+        /// ƒZƒ‹•Ï�XŽž�s‚Ì�F‚ð•Ï‚¦‚é
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_SelectionChanged(object sender, EventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow CurRow = dgv.CurrentRow;
+
+            // ƒf�[ƒ^‚ª‚È‚¢�ê�‡‚Í”²‚¯‚é
+            if (dgv.RowCount == 0) return;
+            //if (CommonMotions.chkCellBlank(CurRow.Cells[(int)DispColumn.SelectionCode].Value) &&
+            //    CommonMotions.chkCellBlank(CurRow.Cells[(int)DispColumn.SelectionName].Value))
+            //{
+            //    return;
+            //}
+            //else
+            //{
+            //    // �‡Œv�s‚Í�ˆ—�‚µ‚È‚¢
+            //    string strWork = CommonMotions.cnvString(CurRow.Cells[(int)DispColumn.SelectionName].Value);
+            //    bool bTitle = false;
+            //    foreach (string strTitle in s_TotalTitleArray)
+            //    {
+            //        if (strWork.Equals(strTitle))
+            //        {
+            //            bTitle = true;
+            //            break;
+            //        }
+            //    }
+            //    if (bTitle) return;
+            //}
+            // �s‘I‘ð�F‚ðŒ³‚É–ß‚·
+            if (m_BeforeGridRow >= 0) DefaultRowChangeColor(m_BeforeGridRow);
+
+            // ‘I‘ð�s�”‚ð‘Þ”ð
+            m_BeforeGridRow = dgv.CurrentRow.Index;
+            // �s‘I‘ð�F‚ð�Ý’è
+            SelectRowChangeColor(m_BeforeGridRow);
+        }
+        #endregion
+
+        #region ƒOƒŠƒbƒh‚©‚çƒtƒH�[ƒJƒX‚ªŠO‚ê‚½�ê�‡
+        /// <summary>
+        /// ƒOƒŠƒbƒh‚©‚çƒtƒH�[ƒJƒX‚ªŠO‚ê‚½�ê�‡
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_Leave(object sender, EventArgs e)
+        {
+            lblCellTotal.Text = string.Empty;
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.designer.cs	(revision 339)
@@ -0,0 +1,359 @@
+ï»¿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmDepartmentCost
+    {
+        /// <summary>
+        /// å¿…è¦�ã�ªãƒ‡ã‚¶ã‚¤ãƒŠå¤‰æ•°ã�§ã�™ã€‚
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// ä½¿ç”¨ä¸­ã�®ãƒªã‚½ãƒ¼ã‚¹ã‚’ã�™ã�¹ã�¦ã‚¯ãƒªãƒ¼ãƒ³ã‚¢ãƒƒãƒ—ã�—ã�¾ã�™ã€‚
+        /// </summary>
+        /// <param name="disposing">ãƒžãƒ�ãƒ¼ã‚¸ ãƒªã‚½ãƒ¼ã‚¹ã�Œç ´æ£„ã�•ã‚Œã‚‹å ´å�ˆ trueã€�ç ´æ£„ã�•ã‚Œã�ªã�„å ´å�ˆã�¯ false ã�§ã�™ã€‚</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows ãƒ•ã‚©ãƒ¼ãƒ  ãƒ‡ã‚¶ã‚¤ãƒŠã�§ç”Ÿæˆ�ã�•ã‚Œã�Ÿã‚³ãƒ¼ãƒ‰
+
+        /// <summary>
+        /// ãƒ‡ã‚¶ã‚¤ãƒŠ ã‚µãƒ�ãƒ¼ãƒˆã�«å¿…è¦�ã�ªãƒ¡ã‚½ãƒƒãƒ‰ã�§ã�™ã€‚ã�“ã�®ãƒ¡ã‚½ãƒƒãƒ‰ã�®å†…å®¹ã‚’
+        /// ã‚³ãƒ¼ãƒ‰ ã‚¨ãƒ‡ã‚£ã‚¿ã�§å¤‰æ›´ã�—ã�ªã�„ã�§ã��ã� ã�•ã�„ã€‚
+        /// </summary>
+        private void InitializeComponent()
+        {
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = 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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.lblCellTotal = new System.Windows.Forms.Label();
+            this.ProgressBar = new System.Windows.Forms.ProgressBar();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.groupBox1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1150, 619);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 8;
+            this.btnEnd.Text = "çµ‚ã€€äº†";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(440, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(400, 20);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "éƒ¨ã€€ç½²ã€€åˆ¥ã€€å‡ºã€€ç´�ã€€ä¸€ã€€è¦§";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblCellTotal
+            // 
+            this.lblCellTotal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.lblCellTotal.AutoSize = true;
+            this.lblCellTotal.BackColor = System.Drawing.Color.Black;
+            this.lblCellTotal.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCellTotal.ForeColor = System.Drawing.Color.White;
+            this.lblCellTotal.Location = new System.Drawing.Point(200, 628);
+            this.lblCellTotal.Name = "lblCellTotal";
+            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
+            this.lblCellTotal.TabIndex = 29;
+            // 
+            // ProgressBar
+            // 
+            this.ProgressBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressBar.Location = new System.Drawing.Point(10, 619);
+            this.ProgressBar.Name = "ProgressBar";
+            this.ProgressBar.Size = new System.Drawing.Size(388, 30);
+            this.ProgressBar.TabIndex = 30;
+            this.ProgressBar.Visible = false;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.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.dgvMaster.BackgroundColor = System.Drawing.Color.White;
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column3,
+            this.Column2,
+            this.Column4,
+            this.Column5});
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle7;
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.EnableHeadersVisualStyles = false;
+            this.dgvMaster.Location = new System.Drawing.Point(10, 103);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(1260, 508);
+            this.dgvMaster.TabIndex = 5;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            this.dgvMaster.SelectionChanged += new System.EventHandler(this.dgvMaster_SelectionChanged);
+            this.dgvMaster.Leave += new System.EventHandler(this.dgvMaster_Leave);
+            this.dgvMaster.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvMaster_MouseUp);
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.groupBox1.BackColor = System.Drawing.Color.MediumSlateBlue;
+            this.groupBox1.BorderColor = System.Drawing.Color.White;
+            this.groupBox1.Controls.Add(this.cmbDepartment);
+            this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.numUDConstPro);
+            this.groupBox1.Controls.Add(this.label5);
+            this.groupBox1.Controls.Add(this.label7);
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(10, 40);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(1260, 55);
+            this.groupBox1.TabIndex = 0;
+            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, 20);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(400, 23);
+            this.cmbDepartment.TabIndex = 1;
+            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_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(294, 19);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 25);
+            this.label2.TabIndex = 40;
+            this.label2.Text = "éƒ¨ã€€ã€€ç½²";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // 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(20, 19);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 38;
+            this.label4.Text = "å–¶æ¥­æœŸ";
+            this.label4.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, 20);
+            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);
+            // 
+            // 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(253, 23);
+            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;
+            // 
+            // label7
+            // 
+            this.label7.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(148, 23);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(25, 16);
+            this.label7.TabIndex = 0;
+            this.label7.Text = "ç¬¬";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column1.Frozen = true;
+            this.Column1.HeaderText = "â„–";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 50;
+            // 
+            // Column3
+            // 
+            this.Column3.HeaderText = "éƒ¨ç½²ã‚³ãƒ¼ãƒ‰";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Visible = false;
+            this.Column3.Width = 5;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column2.HeaderText = "éƒ¨ç½²å��";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 400;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Column4.HeaderText = "æ˜Žç´°æ•°";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column5.HeaderText = "å‡ºç´�é‡‘é¡�";
+            this.Column5.Name = "Column5";
+            this.Column5.ReadOnly = true;
+            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column5.Width = 200;
+            // 
+            // FrmDepartmentCost
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1280, 657);
+            this.Controls.Add(this.ProgressBar);
+            this.Controls.Add(this.lblCellTotal);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEnd);
+            this.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.MinimizeBox = false;
+            this.Name = "FrmDepartmentCost";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionLedgerList_FormClosing);
+            this.Load += new System.EventHandler(this.FrmDepartmentCost_Load);
+            this.SizeChanged += new System.EventHandler(this.FrmConstructionLedgerList_SizeChanged);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionLedgerList_KeyDown);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.groupBox1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private ProcessManagement.Forms.CustomControls.GroupBoxEx groupBox1;
+        private System.Windows.Forms.Label label7;
+        private ProcessManagement.Forms.CustomControls.DataGridViewEX dgvMaster;
+        private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label lblCellTotal;
+        private System.Windows.Forms.ProgressBar ProgressBar;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostList.resx	(revision 339)
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostListAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostListAux.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepartmentCost/FrmDepartmentCostListAux.cs	(revision 339)
@@ -0,0 +1,877 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+//*---------------------------- •”��•Ê�o”[ˆê——‰æ–Ê ----------------------------*
+//  2016/05/11  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmDepartmentCost
+    {
+        #region ’è�”
+        #endregion
+
+        #region •Ï�”
+        #endregion
+
+        #region ƒvƒ�ƒpƒeƒB
+        #endregion
+
+        #region •\Ž¦ƒIƒuƒWƒFƒNƒg‚ÌŽæ“¾
+        /// <summary>
+        /// •\Ž¦ƒIƒuƒWƒFƒNƒg‚ÌŽæ“¾
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            // ƒtƒH�[ƒ€ƒTƒCƒYŽæ“¾
+            m_FormWidthSize = this.Width;
+
+            DataGridView dgv = dgvMaster;
+            // ƒOƒŠƒbƒh‚Ì�î•ñ‚ðŽæ“¾‚·‚é
+            m_GridWidthSize = dgv.Width;
+
+            // ƒOƒŠƒbƒhƒJƒ‰ƒ€•�Žæ“¾
+            int ColCount = Enum.GetNames(typeof(DispColumn)).Length;
+            m_CellSize = new int[ColCount];
+            foreach (DataGridViewColumn wrkCell in dgvMaster.Columns)
+            {
+                m_CellSize[wrkCell.Index] = wrkCell.Width;
+            }
+        }
+        #endregion
+
+        #region ŽŸƒvƒ�ƒZƒX‹N“®
+        /// <summary>
+        /// �HŽ–ˆê——‚æ‚è‹N“®‚·‚éƒvƒ�ƒZƒX‘I‘ð�ˆ—�
+        /// </summary>
+        /// <param name="para_ConstructionCode"></param>
+        private void SubProcessExecute(int para_ConstructionCode = 0)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // Œ»�Ý�Ý’è’lƒNƒŠƒA
+                ClsExcute.ClearSaveParameter(NowPoint);
+                // ----- ‰æ–Ê�î•ñ‘Þ”ð
+                // ŒŸ�õ”N
+                ClsExcute.ProcControlPara[NowPoint].StringSaveParameter.Add(numUDConstPro.Value.ToString());
+                // ŒŸ�õ•”��
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbDepartment.SelectedValue));
+                // •\Ž¦�æ“ª�s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.FirstDisplayedScrollingRowIndex);
+                // Œ»�Ý“ª�s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.CurrentRow.Index);
+
+                // ƒ\�[ƒg�ó‘Ô
+                if (dgvMaster.SortedColumn != null)
+                {
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgvMaster.SortedColumn.Index);
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgvMaster.SortOrder);
+                }
+
+                // ŽŸ‹N“®ƒvƒ�ƒZƒXƒZƒbƒg
+                NowPoint = ClsExcute.NextProcess((int)(int)ClsExcute.ProcessExecuteNo.ConstructionLedger);
+                // ‘I‘ð�HŽ–”Ô�†ƒZƒbƒg
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(para_ConstructionCode);
+                
+                // •”��‘ä’ ˆê——‚æ‚è‚Ì‹N“®‚Í’¼�ÚŽ©ƒvƒ�ƒZƒX‚ð‹N“®‚·‚é
+                if (!m_FirstStartFlg)
+                {
+                    ClsExcute.ProcessExecuteNo_ConstructionLedger(ClsExcute.ProcControlPara[NowPoint]);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // •”��‘ä’ ˆê——‚æ‚è‚Ì‹N“®
+                if (m_FirstStartFlg)
+                {
+                    // ƒNƒ��[ƒY�ˆ—�‚ðOFF‚É‚·‚é�B
+                    m_CloseingProcessOff = true;
+                    // ‰æ–ÊƒNƒ��[ƒY
+                    this.Close();
+                }
+                else
+                {
+                    // ƒf�[ƒ^�Ä•\Ž¦
+                    InitDataLoad();
+                }
+            }
+        }
+        #endregion
+
+        #region ŒŸ�õSQL‚ÌƒZƒLƒ…ƒŠƒeƒB”»’è•”•ª‚ð�ì�¬‚·‚é
+        /// <summary>
+        /// ŒŸ�õSQL‚ÌƒZƒLƒ…ƒŠƒeƒB”»’è•”•ª‚ð�ì�¬‚·‚é
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateSecuritySQL(ref StringBuilder strSecurity)
+        {
+            try
+            {
+                // ƒL�[’lŽæ“¾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // ‘S•”��
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // •¡�”•”��
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // Ž©•”��‚Ì‚Ý
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // Ž©’S“–ŽÒ‚Ì‚Ý
+
+                // ƒf�[ƒ^ƒAƒNƒZƒX‚ÉŒ ŒÀ‚É‚æ‚è�§ŒÀ‚ª‚ ‚é
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ‚·‚×‚Ä‘Î�Û�i�§ŒÀSQL–³�j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // ˆê•”�§ŒÀ—L
+                    // ‹@–§ŠÇ—�ŽÒ�iŽ©•”��‚Ì‚Ý�j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("•”��ˆøŒp")).Key;
+
+                    strSecurity.Append(" And (D.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1");
+                    strSecurity.AppendFormat(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.AppendFormat(" Or (D.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSecurity.Append(" And (D.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3");
+                    strSecurity.AppendFormat(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.Append(" Or D.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5");
+                    strSecurity.AppendFormat(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.Append(" Or D.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7");
+                    strSecurity.AppendFormat(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.AppendFormat(" Or (D.ConstructionStatusFlg >= {0} And D.ConstructionPersonCode = 0)", iStatus);          // �Š‘®’·‚ÍŒ©�Ï’ñ�oŒã‚Å�HŽ–’S“–ŽÒ‚ª“ü‚Á‚Ä‚¢‚È‚¢�ê�‡•\Ž¦
+                    strSecurity.AppendFormat(" Or (D.ConstructionStatusFlg = {0}", iStatus2);                                            // •”��ˆøŒpŽž‚ÍˆøŒp•”��‚Ì‚à‚Ì‚ÍŒ©‚¦‚é
+                    strSecurity.AppendFormat(" And D.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ˆê”ÊŽg—pŽÒ
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("Œ©�Ï’ñ�o")).Key;
+
+                    strSecurity.AppendFormat(" And (D.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.AppendFormat(" Or (D.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSecurity.AppendFormat(" And (D.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.AppendFormat(" Or D.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity.AppendFormat(" Or D.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", ex.Message, strSecurity);
+            }
+        }
+        #endregion
+
+        #region �‰ŠúŽžƒf�[ƒ^Žæ“¾
+        /// <summary>
+        /// �‰ŠúŽžƒf�[ƒ^Žæ“¾
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+
+                // ƒ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)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ‰æ–ÊƒTƒCƒY•Ï�XŽž‚ÌƒZƒ‹ƒTƒCƒY•Ï�X
+        /// <summary>
+        /// ‰æ–ÊƒTƒCƒY•Ï�XŽž‚ÌƒZƒ‹ƒTƒCƒY•Ï�X
+        /// </summary>
+        private void CellSizeChangesWhenChangingScreenSize(bool bNormal)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                int idifference = 0;
+                // �Å‘å‰»‚Ì�ê�‡
+                if (!bNormal)
+                {
+                    // ƒJƒ‰ƒ€‚ÌƒTƒCƒY‚ð‹�‚ß‚é
+                    int ColumnCount = 0;
+                    int TotalWidth = 0;
+                    int NotVisibleSize = 0;
+                    for (int i = 0; i < m_CellSize.Length; i++)
+                    {
+                        TotalWidth += m_CellSize[i];
+                        if (dgv.Columns[i].Visible)
+                        {
+                            ColumnCount++;
+                        }
+                        else
+                        {
+                            NotVisibleSize += m_CellSize[i];
+                        }
+                    }
+
+                    // ‘å‚«‚­‚È‚Á‚½ƒTƒCƒY
+                    //int formdiff = (dgv.Width - (m_GridWidthSize - NotVisibleSize));
+                    int formdiff = (dgv.Width - m_GridWidthSize);
+
+                    idifference = formdiff / ColumnCount;
+                }
+
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    DataGridViewColumn wrkCol = dgv.Columns[i];
+                    wrkCol.Width = m_CellSize[i] + idifference;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �s�F�Ý’è
+        /// <summary>
+        /// �s‚ð‘I‘ð�F‚É‚·‚é
+        /// </summary>
+        /// <param name="CurrentRow"></param>
+        private void SetRowColor(DataGridViewRow CurRow, Color BackColor, Color ForeColor)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                // �s‚Ì�F‚ð•Ï‚¦‚é
+                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("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        #region �s‘I‘ð�F
+        /// <summary>
+        /// �s‚ð‘I‘ð�F‚É‚·‚é
+        /// </summary>
+        /// <param name="CurrentRow"></param>
+        private void SelectRowChangeColor(int CurrentRow)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                DataGridViewRow CurRow = dgv.Rows[CurrentRow];
+
+                // �s‚Ì�F‚ð•Ï‚¦‚é
+                SetRowColor(CurRow, s_RowSelectBackColor, s_RowSelectForeColor);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        #region �sƒfƒtƒHƒ‹ƒg�F
+        /// <summary>
+        /// �s‚ðƒfƒtƒHƒ‹ƒg�F‚É‚·‚é
+        /// </summary>
+        /// <param name="BeforeGridRow"></param>
+        private void DefaultRowChangeColor(int CurrentRow)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                if (CurrentRow >= dgv.RowCount) return;
+                DataGridViewRow CurRow = dgv.Rows[CurrentRow];
+
+                Color SetBackColor = Color.White;
+                Color SetForeColor = Color.Black;
+
+                if ((CurrentRow % 2) != 0)
+                {
+                    SetBackColor = dgv.AlternatingRowsDefaultCellStyle.BackColor;
+                    SetForeColor = dgv.AlternatingRowsDefaultCellStyle.ForeColor;
+                }
+                else
+                {
+                    SetBackColor = dgv.RowsDefaultCellStyle.BackColor;
+                    SetForeColor = dgv.RowsDefaultCellStyle.ForeColor;
+                }
+                // �s‚Ì�F‚ð•Ï‚¦‚é
+                // �s‚Ì�F‚ð•Ï‚¦‚é
+                SetRowColor(CurRow, SetBackColor, SetForeColor);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ƒvƒ�ƒOƒŒƒXƒo�[•\Ž¦�§Œä
+        /// <summary>
+        /// ƒvƒ�ƒOƒŒƒXƒo�[•\Ž¦�§Œä
+        /// </summary>
+        /// <param name="bDisp"></param>
+        private void DisplayControlProgressBar(bool bDisp)
+        {
+            try
+            {
+                ProgressBar.Visible = bDisp;
+                ProgressBar.Minimum = 0;
+                ProgressBar.Value = 0;
+
+                btnEnd.Visible = !bDisp;
+
+                numUDConstPro.Enabled = !bDisp;
+                cmbDepartment.Enabled = !bDisp;
+
+                this.Update();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ˆê——ƒf�[ƒ^•\Ž¦�ˆ—�
+        /// <summary>
+        /// ˆê——ƒf�[ƒ^•\Ž¦�ˆ—�
+        /// </summary>
+        private void DataDisplay()
+        {
+            try
+            {
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region ‚c‚aŽæ“¾�‡”Ô
+        /// <summary>
+        /// ‚c‚aŽæ“¾�‡”Ô
+        /// </summary>
+        private enum DBGetData
+        {
+            ConstructionCode,
+            CreatorCode,
+            CreatorName,
+            DetailString,
+            OrdersDecisionPrice,
+            CompanyExpenses,
+            DepartmentExpenses,
+            SalesExpenses,
+            TotalPayment,
+            GrossProfit,
+            Allowance,
+            NetProfit,
+            ComplateFlg,
+            DepartmentDisplayOrder,
+            PoersonDisplayOrder,
+            DepartmentCode,
+            DepartmentString,
+            ConstructionStatusflg
+        }
+        #endregion
+
+        #region ƒf�[ƒ^Žæ“¾SQL�ì�¬
+        /// <summary>
+        /// •\Ž¦—pƒf�[ƒ^Žæ“¾SQL�ì�¬
+        /// </summary>
+        private void CreateInitSQL(ref StringBuilder strSQL)
+        {
+            try
+            {
+                // SQL‚ÉƒAƒNƒZƒX�§ŒÀ‚ð‚©‚¯‚é
+                StringBuilder strSecurity = new StringBuilder();
+                CreateSecuritySQL(ref strSecurity);
+
+                // •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX’lŽæ“¾
+                int DepartmentCode = GetDepartmentCode();
+
+                int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("”ñ Žó ’�")).Key;
+                // ----- ‚r‚p‚k�ì�¬
+                // ‘¶�Ý�Ú�×‘ä’ ƒf�[ƒ^ŒŸ�õ
+                strSQL.Append(" SELECT");
+                strSQL.Append(" A.CONSTRUCTIONCODE");
+                strSQL.Append(", A.CREATORCODE");
+                strSQL.Append(", C.PERSONNAME");
+                strSQL.Append(", B.DETAILSTRING");
+                strSQL.Append(", A.ORDERSDECISIONPRICE");
+                strSQL.Append(", A.COMPANYEXPENSES");
+                strSQL.Append(", A.DEPARTMENTEXPENSES");
+                strSQL.Append(", A.SALESEXPENSES");
+                strSQL.Append(", A.TOTALPAYMENT");
+                strSQL.Append(", A.GROSSPROFIT");
+                strSQL.Append(", A.ALLOWANCE");
+                strSQL.Append(", A.NETPROFIT");
+                strSQL.Append(", A.COMPLATEFLG");
+                strSQL.Append(", E.DISPLAYORDER");
+                strSQL.Append(", C.DISPLAYORDER");
+                strSQL.Append(", C.DEPARTMENTCODE");
+                strSQL.Append(", ifnull(F.DetailString, '')");
+                strSQL.Append(", D.CONSTRUCTIONSTATUSFLG");
+                strSQL.Append(" FROM CONSTRUCTIONLEDGER A");
+                strSQL.Append(" LEFT JOIN CONSTRUCTIONBASEINFODETAIL F On F.ConstructionCode = A.ConstructionCode");
+                strSQL.AppendFormat(" And F.DetailNo = {0}", (int)ConstructionBaseInfoDetail.DataNoDef.ConstrDepartmentName);
+                strSQL.Append(", CONSTRUCTIONBASEINFODETAIL B");
+                strSQL.Append(", PERSONINCHARGEMASTER C");
+                strSQL.Append(", CONSTRUCTIONBASEINFO D,");
+                strSQL.Append(" DEPARTMENTMASTER E");
+                strSQL.Append(" WHERE A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE");
+                strSQL.AppendFormat(" AND D.TyingFlg != {0}", (int)ConstructionBaseInfo.TyingFlgDef.Tying);
+                strSQL.Append(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE");
+                strSQL.AppendFormat(" AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DataNoDef.ConstructionName);
+                strSQL.AppendFormat(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                strSQL.Append(" AND D.CONSTRUCTIONPERSONCODE = C.PERSONCODE");
+                strSQL.Append(" AND C.DEPARTMENTCODE = E.DEPARTMENTCODE");
+                strSQL.AppendFormat(" AND D.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
+                strSQL.Append(" AND A.CREATORCODE = C.PERSONCODE");
+                if (strSecurity.Length > 0) strSQL.Append(strSecurity.ToString());
+                if (DepartmentCode > 0)
+                {
+                    strSQL.AppendFormat(" AND (D.ConstrDepCode = {0}", DepartmentCode);
+                    strSQL.AppendFormat(" AND F.DetailString = '{0}')", cmbDepartment.Text);
+                }
+
+                strSQL.AppendFormat(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC",
+                                                    ((int)DBGetData.ComplateFlg + 1),
+                                                    ((int)DBGetData.DepartmentDisplayOrder + 1),
+                                                    ((int)DBGetData.ConstructionStatusflg + 1),
+                                                    ((int)DBGetData.PoersonDisplayOrder + 1),
+                                                    ((int)DBGetData.ConstructionCode + 1));
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region •”��ƒRƒ“ƒ{‚æ‚èƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{‚æ‚èƒR�[ƒh‚ðŽæ“¾‚·‚é
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region ’S“–ŽÒ–ˆ‚ÌŽw’èŠú‚Ì�HŽ–ŠJŽn“ú‚ðŽæ“¾‚·‚é
+        /// <summary>
+        /// ’S“–ŽÒ–ˆ‚ÌŽw’èŠú‚Ì�HŽ–ŠJŽn“ú‚ðŽæ“¾‚·‚é
+        /// </summary>
+        /// <returns></returns>
+        private DateTime GetConstructionDate(int PersonCode, bool bStart = true)
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                // ‹ó‚Ì�ê�‡‚Íƒ�ƒOƒCƒ“ƒ†�[ƒU�[
+                if (PersonCode == 0) PersonCode = CommonMotions.LoginUserData.PersonCode;
+
+                // ŠJŽn“úŽæ“¾
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("SELECT A.CONSTRUCTIONPERSONCODE, MIN(B.CONSTRUCTIONSTART) FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBUDGET B");
+                // �I—¹Žw’è‚Í�I—¹‚ÌMAX‚É•Ï�X
+                if (!bStart) strSQL.Replace("MIN(B.CONSTRUCTIONSTART)", "MAX(B.CONSTRUCTIONEND)");
+
+                strSQL.AppendFormat(" WHERE A.CONSTRUCTIONPERSONCODE = {0}", PersonCode);
+                strSQL.AppendFormat("  AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                strSQL.Append(" AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE GROUP BY A.CONSTRUCTIONPERSONCODE");
+                ArrayList ArrayList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL.ToString(), ref ArrayList)) return DateTime.MinValue;
+                if (ArrayList.Count == 0) return DateTime.MinValue;
+
+                object[] objRec = (object[])ArrayList[0];
+
+                return CommonMotions.cnvDate(objRec[1]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return DateTime.MinValue;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒX‚Ö•¶Žš‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            try
+            {
+                cmbDepartment.SelectedIndexChanged -= new EventHandler(cmbDepartment_SelectedIndexChanged);
+                int nBeforeCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                int nTargetCount = (int)numUDConstPro.Value;
+                // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
+                StringBuilder strSQL = new StringBuilder();
+                CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
+
+                // •”��ƒ}ƒXƒ^“Ç�ž
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // ƒRƒ“ƒ{ƒ{ƒbƒNƒX�‰Šú•\Ž¦
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                cmbDepartment.SelectedValue = nBeforeCode;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                cmbDepartment.SelectedIndexChanged += new EventHandler(cmbDepartment_SelectedIndexChanged);
+            }
+        }
+        #endregion
+
+        #region •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒf�[ƒ^Žæ“¾‚r‚p‚k�ì�¬
+        /// <summary>
+        /// •”��ƒRƒ“ƒ{ƒ{ƒbƒNƒXƒf�[ƒ^Žæ“¾‚r‚p‚k�ì�¬
+        /// </summary>
+        /// <param name="strSQL"></param>
+        public static void CreateDepCombBoxSQL(ref StringBuilder strSQL, int nTargetCount, bool bInput = false)
+        {
+            try
+            {
+                // �¡Šú‚Ìƒf�[ƒ^‚©‚Ç‚¤‚©‚ð”»’è‚·‚é
+                bool bNowSeason = CommonMotions.CheckNowSeason(nTargetCount);
+
+                strSQL.Append("SELECT");
+                strSQL.Append(" A.DEPARTMENTCODE");
+                strSQL.Append(", A.DEPARTMENTSTRING");
+                strSQL.Append(", A.DISPLAYORDER");
+                strSQL.Append(", COUNT(*)");
+                strSQL.Append(" FROM");
+                if (bNowSeason)
+                {
+                    // �¡Šú‚Ìƒvƒ‰ƒCƒ}ƒŠƒe�[ƒuƒ‹‚Í•”��ƒ}ƒXƒ^
+                    strSQL.Append(" DEPARTMENTMASTER A");
+                }
+                else
+                {   // ‰ß‹Ž‚Ìƒf�[ƒ^‚Í�HŽ–�î•ñ‚æ‚èŽæ“¾‚·‚é
+                    strSQL.Append(" (");
+                    strSQL.Append("Select");
+                    strSQL.Append(" A1.SalesDepCode As DEPARTMENTCODE");
+                    strSQL.Append(", B1.DetailString As DEPARTMENTSTRING");
+                    strSQL.Append(", ifnull(C1.DisplayOrder, 10) As DISPLAYORDER");
+                    strSQL.Append(" From Constructionbaseinfo As A1");
+                    strSQL.Append("  Inner Join constructionbaseinfodetail As B1");
+                    strSQL.Append("        On B1.ConstructionCode = A1.ConstructionCode");
+                    strSQL.AppendFormat("  And B1.DetailNo = {0}", (int)ConstructionBaseInfoDetail.DataNoDef.SalesDepartmentName);
+                    strSQL.Append("  Left Join departmentmaster As C1");
+                    strSQL.Append("       On C1.DepartmentCode = A1.SalesDepCode");
+                    strSQL.AppendFormat(" Where A1.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append("       And A1.SalesDepCode != 0");
+
+                    strSQL.Append(" Union Select");
+                    strSQL.Append(" A2.ConstrDepCode As DEPARTMENTCODE");
+                    strSQL.Append(" , B2.DetailString As DEPARTMENTSTRING");
+                    strSQL.Append(" , ifnull(C2.DisplayOrder, 10) As DISPLAYORDER");
+                    strSQL.Append(" From Constructionbaseinfo As A2");
+                    strSQL.Append(" Inner Join constructionbaseinfodetail As B2");
+                    strSQL.Append("       On B2.ConstructionCode = A2.ConstructionCode");
+                    strSQL.AppendFormat(" And B2.DetailNo = {0}", (int)ConstructionBaseInfoDetail.DataNoDef.ConstrDepartmentName);
+                    strSQL.Append(" Left Join departmentmaster As C2");
+                    strSQL.Append("      On C2.DepartmentCode = A2.ConstrDepCode");
+                    strSQL.AppendFormat(" Where A2.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append("       And A2.ConstrDepCode != 0");
+
+                    strSQL.Append(" Union Select");
+                    strSQL.Append(" A3.ConstrSubDepCode As DEPARTMENTCODE");
+                    strSQL.Append(", B3.DetailString As DEPARTMENTSTRING");
+                    strSQL.Append(", ifnull(C3.DisplayOrder, 10) As DISPLAYORDER");
+                    strSQL.Append(" From Constructionbaseinfo As A3");
+                    strSQL.Append(" Inner Join constructionbaseinfodetail As B3");
+                    strSQL.Append("       On B3.ConstructionCode = A3.ConstructionCode");
+                    strSQL.AppendFormat(" And B3.DetailNo = {0}", (int)ConstructionBaseInfoDetail.DataNoDef.ConstrSubDepartmentName);
+                    strSQL.Append(" Left Join departmentmaster As C3");
+                    strSQL.Append("      On C3.DepartmentCode = A3.ConstrSubDepCode");
+                    strSQL.AppendFormat(" Where A3.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append("       And A3.ConstrSubDepCode != 0");
+
+                    strSQL.Append(" Union Select");
+                    strSQL.Append(" A4.ConstrInstrDepCode As DEPARTMENTCODE");
+                    strSQL.Append(", B4.DetailString As DEPARTMENTSTRING");
+                    strSQL.Append(", ifnull(C4.DisplayOrder, 10) As DISPLAYORDER");
+                    strSQL.Append(" From Constructionbaseinfo As A4");
+                    strSQL.Append(" Inner Join constructionbaseinfodetail As B4");
+                    strSQL.Append("       On B4.ConstructionCode = A4.ConstructionCode");
+                    strSQL.AppendFormat(" And B4.DetailNo = {0}", (int)ConstructionBaseInfoDetail.DataNoDef.InstrDepartmentName);
+                    strSQL.Append(" Left Join departmentmaster As C4");
+                    strSQL.Append("      On C4.DepartmentCode = A4.ConstrInstrDepCode");
+                    strSQL.AppendFormat(" Where A4.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append("       And A4.ConstrInstrDepCode != 0");
+                    strSQL.Append(") As A");
+                }
+
+                if (bNowSeason)
+                {   // ‘Î�Û‚ª�¡Šú‚Ì�ê�‡
+                    if (!bInput) strSQL.Append(", CONSTRUCTIONBASEINFO C");
+                    strSQL.Append(" WHERE");
+
+                    // �í�œ‚³‚ê‚Ä‚¢‚È‚¢‚à‚Ì
+                    strSQL.Append(" A.DELETEFLG = 0");
+                    DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(nTargetCount, false);
+
+                    strSQL.AppendFormat(" And DATE(A.StartDate) <= DATE('{0}')", dtDefaultEnd.ToShortDateString());
+                    if (!bInput) strSQL.Append(" And C.ConstrDepCode = A.DepartmentCode");
+
+                    // ƒVƒXƒeƒ€ŠÇ—�ŽÒˆÈŠO‚Í•”��ŽQ�Æƒ}ƒXƒ^‚æ‚èƒf�[ƒ^Žæ“¾
+                    if (CommonMotions.LoginUserData.PersonCode != CommonDefine.AdminCode)
+                    {
+                        // ŽQ�Æ•”��ƒ}ƒXƒ^‚æ‚èŽæ“¾‚·‚é
+                        strSQL.Append(" And A.DEPARTMENTCODE");
+                        strSQL.Append(" IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1");
+                        strSQL.AppendFormat(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                else
+                {   // ‘Î�Û‚ª‰ß‹Ž‚Ì�ê�‡
+                    strSQL.Append(", CONSTRUCTIONBASEINFO C");
+                    strSQL.Append(" WHERE");
+
+                    strSQL.AppendFormat(" (C.ConstructionPeriod = {0}", nTargetCount);
+                    strSQL.Append(" And A.DepartmentCode IN(C.SalesDepCode, C.ConstrDepCode, C.ConstrSubDepCode, C.ConstrInstrDepCode))");
+                }
+                strSQL.Append(" GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER");
+                strSQL.Append(" ORDER BY A.DISPLAYORDER ASC");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ‘ä’ �ó‹µŠm”F‰æ–ÊƒNƒ��[ƒY
+        /// <summary>
+        /// ‘ä’ �ó‹µŠm”F‰æ–Ê‚ÌƒNƒ��[ƒY‚ðŽæ“¾‚·‚é
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmPriceOfBudget_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PriceOfBudget;
+                FrmPriceOfBudget frm = (FrmPriceOfBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+
+                // ƒnƒ“ƒhƒ‹ƒNƒŠƒA
+                if (ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle != null)
+                {
+                    ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                    ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                    ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                }
+
+                this.Activate();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ‘Î�Û”N“x�‰ŠúƒZƒbƒg
+        /// <summary>
+        /// ‘Î�Û”N“x�‰ŠúƒZƒbƒg
+        /// </summary>
+        private void SetInitnumUDConstPro()
+        {
+            try
+            {
+                // ŒŸ�õ”N“xƒZƒbƒg
+                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �‰ŠúŽž‚Éƒ�ƒOƒCƒ“’S“–ŽÒ‚ðƒZƒbƒg‚·‚é
+        /// <summary>
+        /// �‰ŠúŽž‚Éƒ�ƒOƒCƒ“’S“–ŽÒ‚ðƒZƒbƒg‚·‚é
+        /// </summary>
+        private void InitDepPersonCode()
+        {
+            try
+            {
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+
+                // �‰Šú•\Ž¦Žž‚É‘¼‚Ì‰æ–Ê‚æ‚è‚Ìƒpƒ‰ƒ��[ƒ^‚ª‚ ‚Á‚½�ê�‡
+                if (!m_FirstStartFlg && m_initDataLoad)
+                {
+                    numUDConstPro.Value = m_FirstStartPeriod;                       // ”N“x
+                    SetcmbDepartment();
+                    cmbDepartment.SelectedValue = m_FirstStartDepartmentCode;       // •”��
+                }
+                else
+                {
+                    // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
+                    if (ClsExcute.ProcControlPara[NowPoint].StringSaveParameter.Count > 0)
+                    {
+                        int Period = CommonMotions.cnvInt(ClsExcute.ProcControlPara[NowPoint].StringSaveParameter[0]); // ”N“x
+                        numUDConstPro.Value = Period;
+                        // •”���E’S“–ŽÒ
+                        if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 0)
+                            cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
+                    }
+                    else
+                    {
+                        // ‘I‘ð•”��‚ª•¡�”‚ÌŽÒ‚ÍƒZƒbƒg‚µ‚È‚¢
+                        if (cmbDepartment.Items.Count > 2) return;
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ƒ_ƒ~�[ƒf�[ƒ^“o˜^�i–¢Žg—p‚¾‚ª•K—v�j
+        /// <summary>
+        /// ƒ_ƒ~�[ƒf�[ƒ^“o˜^
+        /// </summary>
+        /// <returns></returns>
+        private bool DataEntryProcess()
+        {
+            try
+            {
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/ConstrMATLList/FrmConstrMATLListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/ConstrMATLList/FrmConstrMATLListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/ConstrMATLList/FrmConstrMATLListAuxiliary.cs	(revision 339)
@@ -642,10 +642,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -663,15 +663,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -1053,7 +1044,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -1110,7 +1101,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -1167,7 +1158,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudget.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudget.cs	(revision 339)
@@ -382,16 +382,7 @@
             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;
-            if (m_FirstStartPeriod == 0)
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-            else
-                numUDConstPro.Value = m_FirstStartPeriod;
+            SetInitnumUDConstPro();
 
             // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹ã‚»ãƒƒãƒˆ
             SetcmbDepartment();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudgetAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PriceOfBudget/FrmPriceOfBudgetAuxiliary.cs	(revision 339)
@@ -186,7 +186,16 @@
                 strSQL.Append(", D3.EXPENSESRAITO");
                 strSQL.Append(", E1.DETAILSTRING");
                 strSQL.Append(", B1.DISPLAYORDER");
-                strSQL.Append(", A.ORDERDATE");
+
+                strSQL.Append(", CASE");
+                strSQL.AppendFormat(" WHEN DATE(A.ORDERDATE) = DATE('{0}')", DateTime.MinValue.ToShortDateString());
+                strSQL.Append(" Then A.ProvisionalOrderDate");
+                strSQL.Append(" Else");
+                strSQL.Append(" A.ORDERDATE");
+                strSQL.Append(" End As ORDERDATE");
+
+                //strSQL.Append(", A.ORDERDATE");
+
                 strSQL.Append(", Budget.GroupCount");
                 strSQL.Append(", Budget.LineCount");
                 strSQL.Append(", Budget.ExecutionAmount");
@@ -625,7 +634,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -682,7 +691,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -782,7 +791,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
@@ -884,5 +893,35 @@
             }
         }
         #endregion
+
+
+        #region ‘Î�Û”N“x�‰ŠúƒZƒbƒg
+        /// <summary>
+        /// ‘Î�Û”N“x�‰ŠúƒZƒbƒg
+        /// </summary>
+        private void SetInitnumUDConstPro()
+        {
+            try
+            {
+                // ŒŸ�õ”N“xƒZƒbƒg
+                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
+
+                if (m_FirstStartPeriod == 0)
+                    numUDConstPro.Value = CommonMotions.GetPeriodYear();
+                else
+                    numUDConstPro.Value = m_FirstStartPeriod;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ƒVƒXƒeƒ€ƒGƒ‰�[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(revision 339)
@@ -944,10 +944,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -965,15 +965,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -1026,7 +1017,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -1082,7 +1073,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -1138,7 +1129,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ReqbillingStatus/FrmReqBillingStatusAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ReqbillingStatus/FrmReqBillingStatusAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ReqbillingStatus/FrmReqBillingStatusAuxiliary.cs	(revision 339)
@@ -902,10 +902,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -923,15 +923,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -984,7 +975,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -1040,7 +1031,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -1097,7 +1088,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInputList/FrmReqInputListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInputList/FrmReqInputListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInputList/FrmReqInputListAuxiliary.cs	(revision 339)
@@ -461,10 +461,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
@@ -482,15 +482,6 @@
         {
             try
             {
-                // ŒŸ�õ”N“xƒZƒbƒg
-                // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
-                int minval = 0;
-                int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
-                numUDConstPro.Minimum = minval;
-                numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-
                 // ----- ‘Þ”ðŒŸ�õƒf�[ƒ^‚ª‚ ‚Á‚½�ê�‡‚ÍƒZƒbƒg‚·‚é
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 //�@”N“x
@@ -878,7 +869,7 @@
                 cmbDepartment.Text = "";
 
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -934,7 +925,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -990,7 +981,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestPrintList/FrmReqPrintListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestPrintList/FrmReqPrintListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestPrintList/FrmReqPrintListAuxiliary.cs	(revision 339)
@@ -72,10 +72,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SalesConfirm/FrmSalesConfirm.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SalesConfirm/FrmSalesConfirm.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SalesConfirm/FrmSalesConfirm.cs	(revision 339)
@@ -149,7 +149,7 @@
                 int minval = 0;
                 int maxval = 0;
 
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
 
                 // æœ€å¤§å–¶æ¥­æœŸ
                 numericUpDown2.Maximum = maxval;
@@ -156,7 +156,7 @@
                 // æœ€å°�å–¶æ¥­æœŸ
                 numericUpDown2.Minimum = minval;
                 // åˆ�æœŸå€¤ã�¯ç�¾åœ¨ã�®å–¶æ¥­æœŸ
-                numericUpDown2.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numericUpDown2.Value = CommonMotions.GetPeriodYear();
 
 
                 // å¯¾è±¡æœˆ
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs	(revision 339)
@@ -504,7 +504,7 @@
                 GetPeriodYear(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
 
                 // ã‚°ãƒªãƒƒãƒ‰ã�®è¡Œã‚’0ã�«æˆ»ã�™
                 dgvMaster.Rows.Clear();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistAuxiliary.cs	(revision 339)
@@ -367,7 +367,7 @@
                     // ã‚­ãƒ¼é …ç›®ã‚»ãƒƒãƒˆ
                     RegRec.PersonCode = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.PersonCode].Text);
                     RegRec.CreateDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.CreateDate].Text);
-                    RegRec.PetitionPeriod = CommonMotions.SystemMasterData.BusinessPeriod;
+                    RegRec.PetitionPeriod = CommonMotions.GetPeriodYear();
 
                     // ç”³è«‹é€£ç•ªå�–å¾—
                     strSQL = crDB.CreatePrimarykeyString(RegRec.PersonCode, RegRec.CreateDate);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs	(revision 339)
@@ -46,10 +46,10 @@
                 // ƒf�[ƒ^‚É‚ ‚éŽ–‹ÆŠú‚ÆŒ»�Ý‚ÌŽ–‹ÆƒZƒbƒg
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDConstPro.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
@@ -697,7 +697,7 @@
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 // •”��ƒ}ƒXƒ^‚ðŒŸ�õ‚·‚é
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateDepCombBoxSQL(ref strSQL, nTargetCount);
@@ -754,7 +754,7 @@
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
                 StringBuilder strSQL = new StringBuilder();
                 CommonMotions.CreateManCombBoxSQL(ref strSQL, nTargetCount, DepartmentCode);
@@ -811,7 +811,7 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode < 1) return true;
 
-                int nTargetCount = CommonMotions.cnvInt(numUDConstPro.Value);
+                int nTargetCount = (int)numUDConstPro.Value;
                 int DepartmentCode = GetDepartmentCode();
 
                 StringBuilder strSQL = new StringBuilder();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BankBusinessDay/FrmBBDAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BankBusinessDay/FrmBBDAux.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BankBusinessDay/FrmBBDAux.cs	(revision 339)
@@ -230,11 +230,31 @@
         }
         #endregion
 
+        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        /// <summary>
+        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        /// </summary>
+        private void DisplayCalender()
+        {
+            try
+            {
+                CreateNewCalender();
+                CalenderDataLoad();
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region æ–°è¦�ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ä½œæˆ�è¡¨ç¤º
         /// <summary>
         /// æ–°è¦�ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ä½œæˆ�è¡¨ç¤º
         /// </summary>
-        private void CreateNewCalender(bool bNoneData)
+        private void CreateNewCalender()
         {
             try
             {
@@ -282,21 +302,18 @@
                             if (iDay > mlength) break;
                             // æ—¥ä»˜ã‚»ãƒƒãƒˆ
                             m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].Text = iDay.ToString();
-                            
-                            // ä¼šç¤¾å–¶æ¥­æ—¥ãƒ‡ãƒ¼ã‚¿ã�Œç„¡ã�„å ´å�ˆã�¯ã�“ã�“ã�§å–¶æ¥­æ—¥è¨­å®š
-                            if (bNoneData)
+
+                            DateTime dtweek = CommonMotions.cnvDate(CurYear + "/" + CurMonth + "/" + iDay.ToString("00"));
+                            DayOfWeek dayofweek = dtweek.DayOfWeek;
+                            if (dayofweek == DayOfWeek.Sunday)
                             {
-                                DateTime dtweek = CommonMotions.cnvDate(CurYear + "/" + CurMonth + "/" + iDay.ToString("00"));
-                                DayOfWeek dayofweek = dtweek.DayOfWeek;
-                                if (dayofweek == DayOfWeek.Sunday)
-                                {
-                                    m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
-                                }
-                                else if (dayofweek == DayOfWeek.Saturday)
-                                {
-                                    m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
-                                }
+                                m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
                             }
+                            else if (dayofweek == DayOfWeek.Saturday)
+                            {
+                                m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
+                            }
+
                             iDay++;     // æœˆæ—¥æ•°
                         }
                     }
@@ -315,117 +332,56 @@
         /// <summary>
         /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
         /// </summary>
-        private void DisplayCalender()
+        private void CalenderDataLoad()
         {
             IOBankBusinessDayMaster bbdDB = new IOBankBusinessDayMaster();
             try
             {
-                StringBuilder wrkSQL = new StringBuilder();
-                wrkSQL.Append("SELECT");
-                wrkSQL.Append(" Count(*)");
-                wrkSQL.Append(" FROM bankbusinessdaymaster");
-                wrkSQL.Append(" Where");
-                wrkSQL.AppendFormat(" truncate (YEARMONTH / 100, 0) = {0}", numUDYear.Value);
-                ArrayList arData = new ArrayList();
+                int TargetNum = (int)numUDYear.Value;
+                DateTime dtDefaultStart = CommonMotions.GetOpeningEndDate(TargetNum, true, false, (int)SystemMaster.ConstrNoBaseDef.ConstructionYear);
+                DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(TargetNum, false, false, (int)SystemMaster.ConstrNoBaseDef.ConstructionYear);
 
-                // SQLå®Ÿè¡Œ
-                if (!bbdDB.ExecuteReader(wrkSQL.ToString(), ref arData, true)) return;
-                if (arData.Count == 0) return;
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" {0} <= ((YEARMONTH * 100) + BANKBUSINESSDAY)", dtDefaultStart.ToString("yyyyMMdd"));
+                strSQL.AppendFormat(" And((YEARMONTH * 100) + BANKBUSINESSDAY) <= {0}", dtDefaultEnd.ToString("yyyyMMdd"));
+                strSQL.Append(" Order By YEARMONTH, BANKBUSINESSDAY"); ;
 
-                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
-                object[] objwrk = (object[])arData[0];
-                // å–¶æ¥­æ—¥ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚‹å ´å�ˆ
-                if (CommonMotions.cnvInt(objwrk[0]) != 0)
-                {
-                    CreateNewCalender(false);
-                    CalenderDataLoad();
-                }
-                else
-                {
-                    CreateNewCalender(true);
-                }
+                List<BankBusinessDayMaster> bbdList = new List<BankBusinessDayMaster>();
+                if (!bbdDB.SelectAction(strSQL.ToString(), ref bbdList)) return;
+                if (bbdList.Count < 1) return;
 
-
-                m_bChengeAns = false;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                bbdDB.close(); bbdDB = null;
-            }
-        }
-        #endregion
-
-        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
-        /// <summary>
-        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
-        /// </summary>
-        private void CalenderDataLoad()
-        {
-            IOBankBusinessDayMaster bbdDB = new IOBankBusinessDayMaster();
-            try
-            {
-                int MonthCnt = m_CalendPage.lblMonthTitle.Length;
-                for (int i = 0; i < MonthCnt; i++)
+                int nMonthCnt = m_CalendPage.lblMonthTitle.Length;
+                for (int i = 0; i < nMonthCnt; i++)
                 {
                     if (m_CalendPage.lblMonthTitle[i].Text.Length == 0) continue;
 
-                    // è©²å½“å¹´ã‚’æ¤œç´¢ã�™ã‚‹
-                    string nen = m_CalendPage.lblMonthTitle[i].Text.Substring(0, m_CalendPage.lblMonthTitle[i].Text.IndexOf("å¹´"));
-                    int tergetYear = CommonMotions.cnvInt(nen);
-                    // è©²å½“æœˆã‚’æ¤œç´¢ã�™ã‚‹
-                    string wrkTuki = m_CalendPage.lblMonthTitle[i].Text.Substring(m_CalendPage.lblMonthTitle[i].Text.IndexOf("å¹´") + 1, 2);
-                    int tergetMonth = CommonMotions.cnvInt(wrkTuki);
+                    // è¡¨ç¤ºãƒ©ãƒ™ãƒ«ã‚ˆã‚Šå¹´æœˆã‚’å�–å¾—ã�™ã‚‹
+                    int nNenTukiVal = CommonMotions.cnvInt(m_CalendPage.lblMonthTitle[i].Text.Replace("å¹´", "").Replace("æœˆ", ""));
 
-                    StringBuilder strGetMonth = new StringBuilder();
-                    strGetMonth.Append("SELECT");
-                    strGetMonth.Append(" t1.d");
-                    strGetMonth.Append(", CONCAT(");
-                    strGetMonth.Append("truncate (C.YEARMONTH / 100, 0)");
-                    strGetMonth.Append(", '/'");
-                    strGetMonth.Append(", lpad(mod(C.YEARMONTH, 100), 2, 0)");
-                    strGetMonth.Append(", '/'");
-                    strGetMonth.Append(", lpad(C.BANKBUSINESSDAY, 2, 0)");
-                    strGetMonth.Append(") AS BusDAY");
-                    strGetMonth.Append(" FROM");
-                    strGetMonth.Append(" (");
-                    strGetMonth.Append(" SELECT");
-                    strGetMonth.Append(" A1.years");
-                    strGetMonth.Append(", A2.month");
-                    strGetMonth.Append(", A3.days");
-                    strGetMonth.Append(", CAST(");
-                    strGetMonth.Append(" CONCAT(A1.years, '/', A2.month, '/', A3.days) as DATE");
-                    strGetMonth.Append(") as d");
-                    strGetMonth.Append(" FROM");
-                    strGetMonth.Append(" yearmaster as A1");
-                    strGetMonth.Append(", monthmaster as A2");
-                    strGetMonth.Append(", daymaster as A3");
-                    strGetMonth.AppendFormat(" WHERE A1.years = {0}", tergetYear);
-                    strGetMonth.AppendFormat(" AND A2.month = {0}", tergetMonth);
-                    strGetMonth.Append(" AND CAST(CONCAT(A1.years, '/', A2.month, '/', A3.days) as DATE) IS NOT NULL) t1");
-                    strGetMonth.Append(" LEFT JOIN bankbusinessdaymaster C ON ((C.YEARMONTH * 100) + C.BANKBUSINESSDAY) = t1.d");
-                    strGetMonth.Append(" ORDER BY t1.d"); 
+                    // ã��ã�®æœˆã�®ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚‹ã�‹ã�®ãƒ�ã‚§ãƒƒã‚¯
+                    BankBusinessDayMaster FindMonthRec = bbdList.Find(x => x.YearMonth == nNenTukiVal);
+                    if (FindMonthRec == null) continue;
 
-                    ArrayList dataList = new ArrayList();
-                    if (!bbdDB.ExecuteReader(strGetMonth.ToString(), ref dataList)) continue;
-                    if (dataList.Count == 0) continue;
-
-                    int lblDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
-                    object[] CurData = null;
-                    for (int ix = 0; ix < lblDayCnt; ix++)
+                    int nDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
+                    for (int ix = 0; ix < nDayCnt; ix++)
                     {
                         if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0) continue;
 
-                        // ãƒ©ãƒ™ãƒ«ã�®æ—¥ä»˜ã‚ˆã‚Šå�–å¾—ãƒ‡ãƒ¼ã‚¿ã�®ä½�ç½®ã‚’å�–ã‚‹
-                        int daycnt = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text) - 1;
-                        CurData = (object[])dataList[daycnt];
-                        if (CommonMotions.cnvDate(CurData[1]) == DateTime.MinValue)
+                        // ãƒ©ãƒ™ãƒ«ã�®æ—¥ä»˜ã‚’å�–ã‚‹
+                        int nDayVal = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text);
+                        // å¹´æœˆæ—¥ç®—å‡º
+                        int FindYMD = (nNenTukiVal * 100) + nDayVal;
+
+                        BankBusinessDayMaster FindDayRec = bbdList.Find(x => ((x.YearMonth * 100) + x.BankBusinessDay) == FindYMD);
+                        if (FindDayRec == null)
                         {
                             m_CalendPage.MonthryData[i].lblDayData[ix].BackColor = Color.Red;
                         }
+                        else
+                        {
+                            m_CalendPage.MonthryData[i].lblDayData[ix].BackColor = Color.White;
+                        }
                     }
                 }
             }
@@ -453,9 +409,16 @@
                 bbdDB.beginTran();
 
                 // ã�¾ã�šå‰Šé™¤ã�™ã‚‹
-                string wrkSQL = string.Format(" Where Truncate(YEARMONTH / 100, 0) = {0}", numUDYear.Value);
+                int TargetNum = (int)numUDYear.Value;
+                DateTime dtDefaultStart = CommonMotions.GetOpeningEndDate(TargetNum, true, false, (int)SystemMaster.ConstrNoBaseDef.ConstructionYear);
+                DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(TargetNum, false, false, (int)SystemMaster.ConstrNoBaseDef.ConstructionYear);
+
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" {0} <= ((YEARMONTH * 100) + BANKBUSINESSDAY)", dtDefaultStart.ToString("yyyyMMdd"));
+                strSQL.AppendFormat(" And((YEARMONTH * 100) + BANKBUSINESSDAY) <= {0}", dtDefaultEnd.ToString("yyyyMMdd"));
                 // ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
-                bbdDB.DeleteAction(wrkSQL, false);
+                bbdDB.DeleteAction(strSQL.ToString(), false);
 
 
                 List<BankBusinessDayMaster> DataList = new List<BankBusinessDayMaster>();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.Designer.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.Designer.cs	(revision 339)
@@ -45,15 +45,16 @@
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
-            this.label2 = new System.Windows.Forms.Label();
+            this.lblYearTitile = new System.Windows.Forms.Label();
             this.label3 = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
             this.lblWorkingDays = new System.Windows.Forms.Label();
             this.lblHolidyas = new System.Windows.Forms.Label();
             this.numUDYear = new System.Windows.Forms.NumericUpDown();
-            this.label5 = new System.Windows.Forms.Label();
-            this.lblPeriod = new System.Windows.Forms.Label();
-            this.label6 = new System.Windows.Forms.Label();
+            this.lblYearTitile2 = new System.Windows.Forms.Label();
+            this.btnPrint = new System.Windows.Forms.Button();
+            this.PrintProgress = new System.Windows.Forms.ProgressBar();
+            this.btnCancel = new System.Windows.Forms.Button();
             this.tableLayoutPanel1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDYear)).BeginInit();
             this.SuspendLayout();
@@ -307,16 +308,16 @@
             this.btnEnd.UseVisualStyleBackColor = false;
             this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
             // 
-            // label2
+            // lblYearTitile
             // 
-            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
-            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label2.Location = new System.Drawing.Point(12, 38);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(99, 22);
-            this.label2.TabIndex = 14;
-            this.label2.Text = "å¯¾è±¡å¹´åº¦";
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblYearTitile.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.lblYearTitile.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblYearTitile.Location = new System.Drawing.Point(12, 38);
+            this.lblYearTitile.Name = "lblYearTitile";
+            this.lblYearTitile.Size = new System.Drawing.Size(99, 22);
+            this.lblYearTitile.TabIndex = 14;
+            this.lblYearTitile.Text = "å¯¾è±¡å¹´åº¦";
+            this.lblYearTitile.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // label3
             // 
@@ -373,37 +374,56 @@
             this.numUDYear.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
             this.numUDYear.ValueChanged += new System.EventHandler(this.numUDYear_ValueChanged);
             // 
-            // label5
+            // lblYearTitile2
             // 
-            this.label5.BackColor = System.Drawing.Color.White;
-            this.label5.Location = new System.Drawing.Point(223, 38);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(99, 22);
-            this.label5.TabIndex = 14;
-            this.label5.Text = "è©²å½“æœŸ";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblYearTitile2.AutoSize = true;
+            this.lblYearTitile2.BackColor = System.Drawing.Color.Black;
+            this.lblYearTitile2.ForeColor = System.Drawing.Color.White;
+            this.lblYearTitile2.Location = new System.Drawing.Point(203, 41);
+            this.lblYearTitile2.Name = "lblYearTitile2";
+            this.lblYearTitile2.Size = new System.Drawing.Size(25, 16);
+            this.lblYearTitile2.TabIndex = 14;
+            this.lblYearTitile2.Text = "æœŸ";
+            this.lblYearTitile2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // lblPeriod
+            // btnPrint
             // 
-            this.lblPeriod.BackColor = System.Drawing.Color.White;
-            this.lblPeriod.Location = new System.Drawing.Point(330, 38);
-            this.lblPeriod.Name = "lblPeriod";
-            this.lblPeriod.Size = new System.Drawing.Size(60, 22);
-            this.lblPeriod.TabIndex = 14;
-            this.lblPeriod.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.btnPrint.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnPrint.BackColor = System.Drawing.Color.DarkSeaGreen;
+            this.btnPrint.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnPrint.ForeColor = System.Drawing.Color.Black;
+            this.btnPrint.Location = new System.Drawing.Point(360, 574);
+            this.btnPrint.Name = "btnPrint";
+            this.btnPrint.Size = new System.Drawing.Size(120, 30);
+            this.btnPrint.TabIndex = 20;
+            this.btnPrint.Text = "å�°ã€€åˆ·";
+            this.btnPrint.UseVisualStyleBackColor = false;
+            this.btnPrint.Click += new System.EventHandler(this.btnPrint_Click);
             // 
-            // label6
+            // PrintProgress
             // 
-            this.label6.AutoSize = true;
-            this.label6.BackColor = System.Drawing.Color.Black;
-            this.label6.ForeColor = System.Drawing.Color.White;
-            this.label6.Location = new System.Drawing.Point(390, 41);
-            this.label6.Name = "label6";
-            this.label6.Size = new System.Drawing.Size(25, 16);
-            this.label6.TabIndex = 14;
-            this.label6.Text = "æœŸ";
-            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.PrintProgress.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.PrintProgress.Location = new System.Drawing.Point(10, 572);
+            this.PrintProgress.Name = "PrintProgress";
+            this.PrintProgress.Size = new System.Drawing.Size(1000, 36);
+            this.PrintProgress.TabIndex = 25;
+            this.PrintProgress.Visible = false;
             // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(1028, 574);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(120, 30);
+            this.btnCancel.TabIndex = 98;
+            this.btnCancel.Text = "å�°åˆ·ä¸­æ­¢";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Visible = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
             // FrmCalendar
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 16F);
@@ -410,20 +430,21 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1160, 617);
+            this.Controls.Add(this.btnPrint);
             this.Controls.Add(this.numUDYear);
             this.Controls.Add(this.label4);
             this.Controls.Add(this.lblHolidyas);
             this.Controls.Add(this.lblWorkingDays);
             this.Controls.Add(this.label3);
-            this.Controls.Add(this.lblPeriod);
-            this.Controls.Add(this.label6);
-            this.Controls.Add(this.label5);
-            this.Controls.Add(this.label2);
+            this.Controls.Add(this.lblYearTitile2);
+            this.Controls.Add(this.lblYearTitile);
             this.Controls.Add(this.btnDataDelete);
             this.Controls.Add(this.btnDataEntry);
             this.Controls.Add(this.btnEnd);
             this.Controls.Add(this.tableLayoutPanel1);
             this.Controls.Add(this.label1);
+            this.Controls.Add(this.PrintProgress);
+            this.Controls.Add(this.btnCancel);
             this.Font = new System.Drawing.Font("ï¼­ï¼³ æ˜Žæœ�", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
             this.Margin = new System.Windows.Forms.Padding(4);
@@ -460,15 +481,16 @@
         private System.Windows.Forms.Button btnDataDelete;
         private System.Windows.Forms.Button btnDataEntry;
         private System.Windows.Forms.Button btnEnd;
-        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label lblYearTitile;
         private System.Windows.Forms.Label label3;
         private System.Windows.Forms.Label label4;
         private System.Windows.Forms.Label lblWorkingDays;
         private System.Windows.Forms.Label lblHolidyas;
         private System.Windows.Forms.NumericUpDown numUDYear;
-        private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.Label lblPeriod;
-        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label lblYearTitile2;
+        private System.Windows.Forms.Button btnPrint;
+        private System.Windows.Forms.ProgressBar PrintProgress;
+        private System.Windows.Forms.Button btnCancel;
     }
 }
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs	(revision 339)
@@ -205,6 +205,9 @@
             if (m_EditLock) return;
 
             Label lblData = (Label)sender;
+
+            if (lblData.Text.Length < 1) return;
+
             // è‰²ã‚’å¤‰ã�ˆã‚‹
             if (lblData.BackColor == Color.Red) lblData.BackColor = Color.White;
             else if (lblData.BackColor == Color.White) lblData.BackColor = Color.Red;
@@ -226,9 +229,33 @@
             
             // ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
             DisplayCalender();
-            // å¯¾è±¡æœŸè¡¨ç¤º
-            ConvertYearToPeriod();
         }
         #endregion
+
+        #region å�°åˆ·ãƒœã‚¿ãƒ³
+        /// <summary>
+        /// å�°åˆ·ãƒœã‚¿ãƒ³
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnPrint_Click(object sender, EventArgs e)
+        {
+            // å�°åˆ·å‡¦ç�†
+            PrintProcess();
+        }
+        #endregion
+
+        #region å�°åˆ·ã‚­ãƒ£ãƒ³ã‚»ãƒ«ãƒœã‚¿ãƒ³
+        /// <summary>
+        /// å�°åˆ·ã‚­ãƒ£ãƒ³ã‚»ãƒ«ãƒœã‚¿ãƒ³
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            //ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã�®ãƒ•ãƒ©ãƒƒã‚°ã‚’ç«‹ã�¦ã‚‹
+            m_Canceled = true;
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs	(revision 339)
@@ -14,6 +14,7 @@
 using ProcessManagement.Common;
 using ProcessManagement.DB.IOAccess;
 using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
 
 namespace ProcessManagement.Forms.Master
 {
@@ -234,35 +235,49 @@
         }
         #endregion
 
+        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        /// <summary>
+        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        /// </summary>
+        private void DisplayCalender()
+        {
+            try
+            {
+                // æ–°è¦�ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ä½œæˆ�
+                CreateNewCalender();
+                // ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
+                CalenderDataLoad();
+                // ä¼‘æ—¥ã‚«ã‚¦ãƒ³ãƒˆ
+                CountHoliday();
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region æ–°è¦�ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ä½œæˆ�è¡¨ç¤º
         /// <summary>
         /// æ–°è¦�ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ä½œæˆ�è¡¨ç¤º
         /// </summary>
-        private void CreateNewCalender(bool bNoneData)
+        private void CreateNewCalender()
         {
-            IOMBizPeriodHistory BizHisDB = new IOMBizPeriodHistory();
             try
             {
                 // è¡¨ç¤ºã‚¯ãƒªã‚¢
                 ClearCalender();
 
-                StringBuilder strSQL = new StringBuilder();
-                strSQL.AppendFormat(" Where DATE_FORMAT(BeginDate, '%Y') = {0}", numUDYear.Value);
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                    strSQL.AppendFormat(" And PeriodFlag = {0}", (int)BizPeriodHistory.PeriodFlagDef.BizPeriod);
-                else
-                    strSQL.AppendFormat(" And PeriodFlag = {0}", (int)BizPeriodHistory.PeriodFlagDef.ConstrYear);
-                List<BizPeriodHistory> BizHisList = new List<BizPeriodHistory>();
-                if (!BizHisDB.SelectAction(strSQL.ToString(), ref BizHisList)) return;
-                
                 // è¨­å®šå¹´æœˆæ—¥ä½œæˆ�
-                DateTime wrkStartDate = BizHisList[0].BeginDate;
+                int TargetNum = (int)numUDYear.Value;
+                DateTime wrkStartDate = CommonMotions.GetOpeningEndDate(TargetNum, true);
+                DateTime wrkCompDate = CommonMotions.GetOpeningEndDate(TargetNum, false);
 
                 tableLayoutPanel1.SuspendLayout();
 
                 // 12ã‚«æœˆå‡¦ç�†ã�™ã‚‹
-                int iAllDay = 0;
-                int iholiday = 0;
                 for (int i = 0; i < m_CalendPage.lblMonthTitle.Length; i++)
                 {
                     // æœˆã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
@@ -269,6 +284,20 @@
                     string CurDate = wrkStartDate.AddMonths(i).ToShortDateString();
                     string CurYear = CurDate.Substring(0, CurDate.IndexOf("/"));
                     string CurMonth = CurDate.Substring(CurDate.IndexOf("/") + 1, 2);
+
+                    // æœŸé–“å¤–ã�¯è¡¨ç¤ºã�—ã�ªã�„
+                    int nNenTuki = (CommonMotions.cnvInt(CurYear) * 100) + CommonMotions.cnvInt(CurMonth);
+                    int nComp = CommonMotions.cnvInt(wrkCompDate.ToString("yyyyMM"));
+                    if (nComp < nNenTuki)
+                    {
+                        for (int ii = 0; ii < s_ColumnPosision.Length; ii++)
+                        {
+                            m_CalendPage.MonthryData[i].lblWeekTitle[ii].Text = string.Empty;
+                        }
+                        continue;
+                    }
+
+                    // å¹´æœˆã‚»ãƒƒãƒˆ
                     m_CalendPage.lblMonthTitle[i].Text = CurYear + "å¹´" + CurMonth + "æœˆ";
 
                     // æ—¥ä»˜ã�®é–‹å§‹ä½�ç½®ã�¨é€±æ•°ã‚’æ±‚ã‚�ã‚‹
@@ -275,9 +304,10 @@
                     int XStart = 0;
                     int YEnd = s_RowPosision.Length;
 
-                    // æœˆã�®æœ€çµ‚æ—¥ã�‹ã‚‰é€±æ•°ã‚’æ±‚ã‚�ã‚‹
+                    // æœˆã�®æœ€çµ‚æ—¥ã‚’æ±‚ã‚�ã‚‹
                     int mlength = DateTime.DaysInMonth(CommonMotions.cnvInt(CurYear), CommonMotions.cnvInt(CurMonth));
                     CurDate = CurYear + "/" + CurMonth + "/" + mlength.ToString("00");
+                    // æœˆã�®æœ€çµ‚æ—¥ã�‹ã‚‰é€±æ•°ã‚’æ±‚ã‚�ã‚‹
                     YEnd = CommonMotions.NthWeek(CommonMotions.cnvDate(CurDate));
 
                     // é–‹å§‹æ—¥ã�®æ›œæ—¥ã�‹ã‚‰é–‹å§‹ä½�ç½®ã‚’æ±‚ã‚�ã‚‹
@@ -295,41 +325,36 @@
                         {
                             // æœˆã�®æœ€çµ‚æ—¥ã�¾ã�§å‡¦ç�†ã‚’è¡Œã�†
                             if (iDay > mlength) break;
+
+                            // æœŸé–“å¤–ã�¯è¡¨ç¤ºã�—ã�ªã�„
+                            int nNenTukihi = (CommonMotions.cnvInt(CurYear) * 10000) + (CommonMotions.cnvInt(CurMonth) * 100) + iDay;
+                            int nCompDate = CommonMotions.cnvInt(wrkCompDate.ToString("yyyyMMdd"));
+                            if (nCompDate < nNenTukihi) break;
+
                             // æ—¥ä»˜ã‚»ãƒƒãƒˆ
                             m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].Text = iDay.ToString();
-                            
-                            // ä¼šç¤¾ä¼‘æ—¥ãƒ‡ãƒ¼ã‚¿ã�Œç„¡ã�„å ´å�ˆã�¯ã�“ã�“ã�§ä¼‘æ—¥è¨­å®š
-                            if (bNoneData)
+
+                            // ã�“ã�“ã�§ä¼‘æ—¥è¨­å®šã€�æ—¥æ›œæ—¥ãƒ»ç¬¬äºŒãƒ»ç¬¬å››åœŸæ›œã�¯èµ¤ã�«ã�™ã‚‹
+                            DateTime dtweek = CommonMotions.cnvDate(CurYear + "/" + CurMonth + "/" + iDay.ToString("00"));
+                            DayOfWeek dayofweek = dtweek.DayOfWeek;
+                            if (dayofweek == DayOfWeek.Sunday)
                             {
-                                // æ—¥æ›œæ—¥ãƒ»ç¬¬äºŒãƒ»ç¬¬å››åœŸæ›œã�¯èµ¤ã�«ã�™ã‚‹
-                                DateTime dtweek = CommonMotions.cnvDate(CurYear + "/" + CurMonth + "/" + iDay.ToString("00"));
-                                DayOfWeek dayofweek = dtweek.DayOfWeek;
-                                if (dayofweek == DayOfWeek.Sunday)
+                                m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
+                            }
+                            else if (dayofweek == DayOfWeek.Saturday)
+                            {
+                                int weekcnt = CommonMotions.NthWeek(dtweek);
+                                if (weekcnt == 2 || weekcnt == 4)
                                 {
                                     m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
-                                    iholiday++;
                                 }
-                                else if (dayofweek == DayOfWeek.Saturday)
-                                {
-                                    int weekcnt = CommonMotions.NthWeek(dtweek);
-                                    if (weekcnt == 2 || weekcnt == 4)
-                                    {
-                                        m_CalendPage.MonthryData[i].lblDayData[ix + (iy * 7)].BackColor = Color.Red;
-                                        iholiday++;
-                                    }
-                                }
                             }
                             iDay++;     // æœˆæ—¥æ•°
-                            iAllDay++;  // å¹´é–“æ—¥æ•°
                         }
                     }
                 }
 
                 tableLayoutPanel1.ResumeLayout();
-                // ç¨¼åƒ�æ—¥æ•°
-                lblWorkingDays.Text = (iAllDay - iholiday).ToString();
-                // ä¼‘æ—¥æ—¥æ•°
-                lblHolidyas.Text = iholiday.ToString();
             }
             catch (Exception ex)
             {
@@ -337,100 +362,61 @@
             }
             finally
             {
-                BizHisDB.close(); BizHisDB = null;
+                //BizHisDB.close(); BizHisDB = null;
             }
         }
         #endregion
 
-        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆè¡¨ç¤º
         /// <summary>
-        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
+        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆè¡¨ç¤º
         /// </summary>
-        private void DisplayCalender()
+        private void CalenderDataLoad()
         {
             IOMHolidayCalender hcDB = new IOMHolidayCalender();
             try
             {
-                string wrkSQL = string.Format("SELECT Count(*) FROM HolidayCalenderMaster Where BusinessYear = {0}", numUDYear.Value);
-                ArrayList arData = new ArrayList();
+                int TargetNum = (int)numUDYear.Value;
+                DateTime dtDefaultStart = CommonMotions.GetOpeningEndDate(TargetNum, true);
+                DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(TargetNum, false);
 
-                // SQLå®Ÿè¡Œ
-                if (!hcDB.ExecuteReader(wrkSQL, ref arData, true)) return;
-                if (arData.Count == 0) return;
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" DATE('{0}') <= Date(Holiday)", dtDefaultStart.ToShortDateString());
+                strSQL.AppendFormat(" And Date(Holiday) <= DATE('{0}')", dtDefaultEnd.ToShortDateString());
+                strSQL.Append(" Order By Holiday");
 
-                // ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆ
-                object[] objwrk = (object[])arData[0];
-                // ä¼‘æ—¥ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚‹å ´å�ˆ
-                if (CommonMotions.cnvInt(objwrk[0]) != 0)
-                {
-                    CreateNewCalender(false);
-                    CalenderDataLoad();
-                    CountHoliday();
-                }
-                else
-                {
-                    CreateNewCalender(true);
-                }
+                List<HolidayCalenderMaster> hcList = new List<HolidayCalenderMaster>();
+                if (!hcDB.SelectAction(strSQL.ToString(), ref hcList)) return;
+                if (hcList.Count < 1) return;
 
-
-                m_bChengeAns = false;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                hcDB.close(); hcDB = null;
-            }
-        }
-        #endregion
-
-        #region ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
-        /// <summary>
-        /// ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼è¡¨ç¤º
-        /// </summary>
-        private void CalenderDataLoad()
-        {
-            IOMHolidayCalender hcDB = new IOMHolidayCalender();
-            try
-            {
-                int MonthCnt = m_CalendPage.lblMonthTitle.Length;
-                for (int i = 0; i < MonthCnt; i++)
+                int nMonthCnt = m_CalendPage.lblMonthTitle.Length;
+                for (int i = 0; i < nMonthCnt; i++)
                 {
                     if (m_CalendPage.lblMonthTitle[i].Text.Length == 0) continue;
 
-                    // è©²å½“å¹´ã‚’æ¤œç´¢ã�™ã‚‹
-                    string nen = m_CalendPage.lblMonthTitle[i].Text.Substring(0, m_CalendPage.lblMonthTitle[i].Text.IndexOf("å¹´"));
-                    int tergetYear = CommonMotions.cnvInt(nen);
-                    // è©²å½“æœˆã‚’æ¤œç´¢ã�™ã‚‹
-                    string wrkTuki = m_CalendPage.lblMonthTitle[i].Text.Substring(m_CalendPage.lblMonthTitle[i].Text.IndexOf("å¹´") + 1, 2);
-                    int tergetMonth = CommonMotions.cnvInt(wrkTuki);
+                    // è¡¨ç¤ºãƒ©ãƒ™ãƒ«ã‚ˆã‚Šå¹´æœˆã‚’å�–å¾—ã�™ã‚‹
+                    int nNenTukiVal = CommonMotions.cnvInt(m_CalendPage.lblMonthTitle[i].Text.Replace("å¹´", "").Replace("æœˆ", ""));
+                    
+                    // ã��ã�®æœˆã�®ãƒ‡ãƒ¼ã‚¿ã�Œã�‚ã‚‹ã�‹ã�®ãƒ�ã‚§ãƒƒã‚¯
+                    HolidayCalenderMaster FindMonthRec = hcList.Find(x => CommonMotions.cnvInt(x.Holiday.ToString("yyyyMM")) == nNenTukiVal);
+                    if (FindMonthRec == null) continue;
 
-                    string strGetMonth = "SELECT t1.d, DATE_FORMAT(C.HOLIDAY, '%Y/%m/%d') HOLIDAY FROM";
-                    strGetMonth += " (SELECT A1.years, A2.month, A3.days, CAST(CONCAT(A1.years, '/', A2.month, '/', A3.days) as  DATE) as d";
-                    strGetMonth += " FROM yearmaster as A1, monthmaster as A2, daymaster as A3";
-                    strGetMonth += string.Format(" WHERE A1.years = {0}", tergetYear);
-                    strGetMonth += string.Format(" AND A2.month = {0}", tergetMonth);
-                    strGetMonth += " AND CAST(CONCAT(A1.years, '/', A2.month, '/', A3.days) as DATE) IS NOT NULL) t1";
-                    strGetMonth += " LEFT JOIN HOLIDAYCALENDERMASTER C ON C.HOLIDAY = t1.d";
-                    strGetMonth += " ORDER BY t1.d";
+                    int nDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
+                    for (int ix = 0; ix < nDayCnt; ix++)
+                    {
+                        m_CalendPage.MonthryData[i].lblDayData[ix].BackColor = Color.White;
 
-                    ArrayList dataList = new ArrayList();
-                    if (!hcDB.ExecuteReader(strGetMonth, ref dataList)) continue;
-                    if (dataList.Count == 0) continue;
-
-                    int lblDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
-                    object[] CurData = null;
-                    for (int ix = 0; ix < lblDayCnt; ix++)
-                    {
                         if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0) continue;
 
-                        // ãƒ©ãƒ™ãƒ«ã�®æ—¥ä»˜ã‚ˆã‚Šå�–å¾—ãƒ‡ãƒ¼ã‚¿ã�®ä½�ç½®ã‚’å�–ã‚‹
-                        int daycnt = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text) - 1;
-                        CurData = (object[])dataList[daycnt];
-                        if (CommonMotions.cnvDate(CurData[1]) == DateTime.MinValue) continue;
+                        // ãƒ©ãƒ™ãƒ«ã�®æ—¥ä»˜ã‚’å�–ã‚‹
+                        int nDayVal = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text);
+                        // å¹´æœˆæ—¥ç®—å‡º
+                        int FindYMD = (nNenTukiVal * 100) + nDayVal;
 
+                        HolidayCalenderMaster FindDayRec = hcList.Find(x => CommonMotions.cnvInt(x.Holiday.ToString("yyyyMMdd")) == FindYMD);
+                        if (FindDayRec == null) continue;
+
                         m_CalendPage.MonthryData[i].lblDayData[ix].BackColor = Color.Red;
                     }
                 }
@@ -452,45 +438,32 @@
         /// </summary>
         private void CountHoliday()
         {
-            IOMBizPeriodHistory BizHisDB = new IOMBizPeriodHistory();
             try
             {
-                StringBuilder strSQL = new StringBuilder();
-                strSQL.AppendFormat(" Where DATE_FORMAT(BeginDate, '%Y') = {0}", numUDYear.Value);
-                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
-                    strSQL.AppendFormat(" And PeriodFlag = {0}", (int)BizPeriodHistory.PeriodFlagDef.BizPeriod);
-                else
-                    strSQL.AppendFormat(" And PeriodFlag = {0}", (int)BizPeriodHistory.PeriodFlagDef.ConstrYear);
-                List<BizPeriodHistory> BizHisList = new List<BizPeriodHistory>();
-                if (!BizHisDB.SelectAction(strSQL.ToString(), ref BizHisList)) return;
-
-                // è¨­å®šå¹´æœˆæ—¥ä½œæˆ�
-                DateTime wrkStartDate = BizHisList[0].BeginDate;
                 // 12ã‚«æœˆå‡¦ç�†ã�™ã‚‹
                 int iAllDay = 0;
                 int iholiday = 0;
-                for (int i = 0; i < m_CalendPage.lblMonthTitle.Length; i++)
+                int nMonthCnt = m_CalendPage.lblMonthTitle.Length;
+                for (int i = 0; i < nMonthCnt; i++)
                 {
-                    // æœˆã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                    string CurDate = wrkStartDate.AddMonths(i).ToShortDateString();
-                    string CurYear = CurDate.Substring(0, CurDate.IndexOf("/"));
-                    string CurMonth = CurDate.Substring(CurDate.IndexOf("/") + 1, 2);
-                    // æœˆã�®æœ€çµ‚æ—¥ã�‹ã‚‰é€±æ•°ã‚’æ±‚ã‚�ã‚‹
-                    int mlength = DateTime.DaysInMonth(CommonMotions.cnvInt(CurYear), CommonMotions.cnvInt(CurMonth));
+                    if (m_CalendPage.lblMonthTitle[i].Text.Length == 0) continue;
 
-                    // 1ã‚«æœˆåˆ†å‡¦ç�†ã�™ã‚‹
-                    for (int ix = 0; ix < m_CalendPage.MonthryData[i].lblDayData.Length; ix++)
+                    // è¡¨ç¤ºãƒ©ãƒ™ãƒ«ã‚ˆã‚Šå¹´æœˆã‚’å�–å¾—ã�™ã‚‹
+                    int nNenTukiVal = CommonMotions.cnvInt(m_CalendPage.lblMonthTitle[i].Text.Replace("å¹´", "").Replace("æœˆ", ""));
+
+                    int nDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
+                    for (int ix = 0; ix < nDayCnt; ix++)
                     {
-                        // æœˆã�®æœ€çµ‚æ—¥ã�¾ã�§å‡¦ç�†ã‚’è¡Œã�†
-                        if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0) 
-                            continue;
-                        // ä¼‘æ—¥ã‚’åŠ ç®—ã�™ã‚‹
-                        if (m_CalendPage.MonthryData[i].lblDayData[ix].BackColor == Color.Red)
+                        if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0) continue;
+
+                        if(m_CalendPage.MonthryData[i].lblDayData[ix].BackColor == Color.Red)
+                        {
                             iholiday++;
-
-                        iAllDay++;  // å¹´é–“æ—¥æ•°
+                        }
+                        iAllDay++;
                     }
                 }
+
                 // ç¨¼åƒ�æ—¥æ•°
                 lblWorkingDays.Text = (iAllDay - iholiday).ToString();
                 // ä¼‘æ—¥æ—¥æ•°
@@ -500,10 +473,6 @@
             {
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                BizHisDB.close(); BizHisDB = null;
-            }
         }
         #endregion
 
@@ -516,50 +485,55 @@
             IOMHolidayCalender hcDB = new IOMHolidayCalender();
             try
             {
-                hcDB.connect();
-                hcDB.beginTran();
+                hcDB.connect(); hcDB.beginTran();
 
+                int TargetNum = (int)numUDYear.Value;
+                DateTime dtDefaultStart = CommonMotions.GetOpeningEndDate(TargetNum, true);
+                DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(TargetNum, false);
+
                 // ã�¾ã�šå‰Šé™¤ã�™ã‚‹
-                string wrkSQL = string.Format(" Where BusinessYear = {0}", numUDYear.Value.ToString());
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" DATE('{0}') <= Date(Holiday)", dtDefaultStart.ToShortDateString());
+                strSQL.AppendFormat(" And Date(Holiday) <= DATE('{0}')", dtDefaultEnd.ToShortDateString());
                 // ãƒ‡ãƒ¼ã‚¿å‰Šé™¤
-                hcDB.DeleteAction(wrkSQL, false);
+                hcDB.DeleteAction(strSQL.ToString(), false);
 
 
-                List<HolidayCalenderMaster>DataList = new List<HolidayCalenderMaster>();
-                // è¨­å®šå¹´æœˆæ—¥ä½œæˆ�
-                string CalenderDate = numUDYear.Value.ToString() + "/" + CommonMotions.SystemMasterData.BusinessBeginDate;
-                DateTime wrkStartDate = CommonMotions.cnvDate(CalenderDate);
-                // 12ã‚«æœˆå‡¦ç�†ã�™ã‚‹
-                for (int i = 0; i < m_CalendPage.lblMonthTitle.Length; i++)
+                List<HolidayCalenderMaster> DataList = new List<HolidayCalenderMaster>();
+                int nMonthCnt = m_CalendPage.lblMonthTitle.Length;
+                for (int i = 0; i < nMonthCnt; i++)
                 {
-                    // æœˆã‚’ã‚»ãƒƒãƒˆã�™ã‚‹
-                    string CurDate = wrkStartDate.AddMonths(i).ToShortDateString();
-                    string CurYear = CurDate.Substring(0, CurDate.IndexOf("/"));
-                    string CurMonth = CurDate.Substring(CurDate.IndexOf("/") + 1, 2);
-                    // æœˆã�®æœ€çµ‚æ—¥ã�‹ã‚‰é€±æ•°ã‚’æ±‚ã‚�ã‚‹
-                    int mlength = DateTime.DaysInMonth(CommonMotions.cnvInt(CurYear), CommonMotions.cnvInt(CurMonth));
+                    if (m_CalendPage.lblMonthTitle[i].Text.Length == 0) continue;
 
-                    // 1é€±é–“åˆ†å‡¦ç�†ã�™ã‚‹
-                    for (int ix = 0; ix < m_CalendPage.MonthryData[i].lblDayData.Length; ix++)
+                    // è¡¨ç¤ºãƒ©ãƒ™ãƒ«ã‚ˆã‚Šå¹´æœˆã‚’å�–å¾—ã�™ã‚‹
+                    int nNenTukiVal = CommonMotions.cnvInt(m_CalendPage.lblMonthTitle[i].Text.Replace("å¹´", "").Replace("æœˆ", ""));
+                    int nNenVal = CommonMotions.cnvTruncate(nNenTukiVal / 100);
+                    int nMonthVal = CommonMotions.cnvTruncate(nNenTukiVal % 100);
+
+                    int nDayCnt = m_CalendPage.MonthryData[i].lblDayData.Length;
+                    for (int ix = 0; ix < nDayCnt; ix++)
                     {
-                        // æœˆã�®æœ€çµ‚æ—¥ã�¾ã�§å‡¦ç�†ã‚’è¡Œã�†
-                        if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0)
-                            continue;
-                        // ä¼‘æ—¥ã‚’åŠ ç®—ã�™ã‚‹
-                        if (m_CalendPage.MonthryData[i].lblDayData[ix].BackColor == Color.Red)
-                        {
-                            DateTime wrkTergetDate = CommonMotions.cnvDate(CurYear + "/" + CurMonth 
-                                                                            + "/" + CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text).ToString());
-                            HolidayCalenderMaster wrkRec = new HolidayCalenderMaster();
-                            wrkRec.BusinessYear = CommonMotions.cnvInt(numUDYear.Value);
-                            wrkRec.Holiday = wrkTergetDate;
-                            wrkRec.TargetMonth = CommonMotions.cnvInt(CurMonth);
-                            wrkRec.TargetDay = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text);
-                            DataList.Add(wrkRec);
-                        }
+                        // æ—¥ä»˜ç„¡ã�¯å‡¦ç�†ã�—ã�ªã�„
+                        if (m_CalendPage.MonthryData[i].lblDayData[ix].Text.Length == 0) continue;
+                        // ä¼‘æ—¥ä»¥å¤–ã�¯å‡¦ç�†ã�—ã�ªã�„
+                        if (m_CalendPage.MonthryData[i].lblDayData[ix].BackColor == Color.White) continue;
+
+                        // ãƒ©ãƒ™ãƒ«ã�®æ—¥ä»˜ã‚’å�–ã‚‹
+                        int nDayVal = CommonMotions.cnvInt(m_CalendPage.MonthryData[i].lblDayData[ix].Text);
+
+                        DateTime wrkTergetDate = new DateTime(nNenVal, nMonthVal, nDayVal);
+                        HolidayCalenderMaster wrkRec = new HolidayCalenderMaster();
+                        wrkRec.BusinessYear = CommonMotions.cnvInt(numUDYear.Value);
+                        wrkRec.Holiday = wrkTergetDate;
+                        wrkRec.TargetMonth = nMonthVal;
+                        wrkRec.TargetDay = nDayVal;
+                        DataList.Add(wrkRec);
+
                     }
                 }
-                if (!hcDB.InsertAction(DataList,false))
+
+                if (!hcDB.InsertAction(DataList, false))
                 {
                     hcDB.rollback();
                     MessageBox.Show("ç™»éŒ²ã�«å¤±æ•—ã�—ã�¾ã�—ã�Ÿã€‚", "ç™»éŒ²ã‚¨ãƒ©ãƒ¼", MessageBoxButtons.OK, MessageBoxIcon.Error);
@@ -627,16 +601,40 @@
             IOMHolidayCalender holDB = new IOMHolidayCalender();
             try
             {
+                // åŸºæº–å¹´åº¦ã�®åˆ¤å®š
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)SystemMaster.ConstrNoBaseDef.BusinessPeriod)
+                {
+                    lblYearTitile.Text = "å¯¾è±¡æœŸ";
+                    lblYearTitile2.Text = "æœŸ";
+                }
+                else
+                {
+                    lblYearTitile.Text = "å¯¾è±¡å¹´åº¦";
+                    lblYearTitile2.Text = "å¹´";
+                }
+
                 // å½“å¹´åº¦å�–å¾—
-                int ToYear = CommonMotions.SystemMasterData.ConstrYear;
+                int ToYear = CommonMotions.GetPeriodYear();
 
-                string strSQL = "SELECT DATE_FORMAT(Holiday ,'%Y'), COUNT(*) FROM HOLIDAYCALENDERMASTER";
-                strSQL += " GROUP BY DATE_FORMAT(Holiday ,'%Y') ORDER BY DATE_FORMAT(Holiday ,'%Y')";
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("Select");
+                strSQL.Append(" A.PeriodYear");
+                strSQL.Append(", A.PeriodFlag");
+                strSQL.Append(", Count(*)");
+                strSQL.Append(" From");
+                strSQL.Append(" bizperiodhistory As A");
+                strSQL.Append(", HOLIDAYCALENDERMASTER As B");
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" A.PeriodFlag = {0}", CommonMotions.SystemMasterData.ConstructionNoBase);
+                strSQL.Append(" And(A.BeginDate <= B.Holiday");
+                strSQL.Append(" And B.Holiday <= A.CompleteDate)");
+                strSQL.Append(" Group By A.PeriodYear");
+                strSQL.Append(" Order By A.PeriodYear");
 
                 ArrayList arList = new ArrayList();
                 int Max = 0;
                 int Min = 0;
-                if (holDB.ExecuteReader(strSQL, ref arList) || arList.Count != 0)
+                if (holDB.ExecuteReader(strSQL.ToString(), ref arList) || arList.Count != 0)
                 {
                     // æœ€å¤§ãƒ»æœ€ä½Žå€¤å�–å¾—
                     GetMaxMinYear(arList, ref Max, ref Min);
@@ -653,8 +651,6 @@
                 numUDYear.Minimum = Min;
                 numUDYear.Maximum = Max;
                 numUDYear.Value = ToYear;
-
-                ConvertYearToPeriod();
             }
             catch (System.Exception ex)
             {
@@ -678,16 +674,11 @@
         {
             try
             {
-                bool init = true;
-                foreach (object[] wrkobj in arList)
-                {
-                    if (init)
-                    {
-                        Min = CommonMotions.cnvInt(wrkobj[0]);
-                        init = false;
-                    }
-                    Max = CommonMotions.cnvInt(wrkobj[0]);
-                }
+                object[] wrkobj = (object[])arList[0];
+                Min = CommonMotions.cnvInt(wrkobj[0]);
+
+                wrkobj = (object[])arList[(arList.Count - 1)];
+                Max = CommonMotions.cnvInt(wrkobj[0]);
             }
             catch (System.Exception ex)
             {
@@ -714,26 +705,63 @@
         }
         #endregion
 
-        #region å¯¾è±¡æœŸè¡¨ç¤º
+        #region å�°åˆ·å‡¦ç�†
         /// <summary>
-        /// å¯¾è±¡æœŸè¡¨ç¤º
+        /// å�°åˆ·å‡¦ç�†
         /// </summary>
-        private void ConvertYearToPeriod()
+        private void PrintProcess()
         {
             try
             {
-                // å·®åˆ†å¹´è¨ˆç®—
-                int DiffVal = (int)numUDYear.Value - CommonMotions.SystemMasterData.ConstrYear;
-                // å–¶æ¥­æœŸè¨ˆç®—
-                int nPeriod = CommonMotions.SystemMasterData.BusinessPeriod + (DiffVal);
+                if (MessageBox.Show("ç�¾åœ¨è¡¨ç¤ºã�•ã‚Œã�¦ã�„ã‚‹ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã‚’å�°åˆ·ã�—ã�¾ã�™ã€‚"
+                                    , "å�°åˆ·ç¢ºèª�"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
 
-                lblPeriod.Text = nPeriod.ToString();
+                // å�°åˆ·ãƒ—ãƒ­ã‚»ã‚¹æ•°å�–å¾—
+                m_ProcessCount = 14;       // 12ã�‹æœˆï¼‹ï¼¥ï¼¸ï¼£ï¼¥ï¼¬ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆå�–å¾—(2)
+                PrintProgress.Visible = true;
+                PrintProgress.Minimum = 0;
+                PrintProgress.Maximum = m_ProcessCount;
+                PrintProgress.Value = 0;
+
+                m_Canceled = false;
+                // ãƒœã‚¿ãƒ³ã�®å¤‰æ›´
+                PrintButtonVisbleControl(true);
+
+                //å�°åˆ·ã‚’åˆ¥ã‚¹ãƒ¬ãƒƒãƒ‰ã�§å®Ÿè¡Œã�™ã‚‹
+                m_ProgressCount = 0;
+                workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(PrintMain));
+                workerThread.IsBackground = true;
+                workerThread.Start();
             }
-            catch (System.Exception ex)
+            catch (Exception ex)
             {
                 logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
+
+        #region å�°åˆ·æ™‚ãƒœã‚¿ãƒ³åˆ¶å¾¡
+        /// <summary>
+        /// å�°åˆ·æ™‚ãƒœã‚¿ãƒ³åˆ¶å¾¡
+        /// </summary>
+        /// <param name="bprint"></param>
+        private void PrintButtonVisbleControl(bool bprint)
+        {
+            btnCancel.Visible = bprint;
+            PrintProgress.Visible = bprint;
+
+            numUDYear.Enabled = !bprint;
+            btnPrint.Visible = !bprint;
+            btnDataEntry.Visible = !bprint;
+            btnDataDelete.Visible = !bprint;
+            btnEnd.Visible = !bprint;
+            label3.Visible = !bprint;
+            label4.Visible = !bprint;
+            lblWorkingDays.Visible = !bprint;
+            lblHolidyas.Visible = !bprint;
+            tableLayoutPanel1.Enabled = !bprint;
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintCommon.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintCommon.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintCommon.cs	(revision 339)
@@ -0,0 +1,168 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Collections;
+using System.Windows.Forms;
+using System.Diagnostics;
+using Microsoft.VisualBasic;
+using System.Globalization;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    /// <summary>
+    /// å�°åˆ·å‡¦ç�†å…±é€šå¤‰æ•°
+    /// </summary>
+    partial class FrmCalendar
+    {
+        #region ã‚¹ãƒ¬ãƒƒãƒ‰ä½¿ç”¨å®šç¾©
+        //ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹ã�Ÿã‚�ã�®ãƒ‡ãƒªã‚²ãƒ¼ãƒˆ
+        private delegate void SetProgressValueDelegate(int num);
+        //ãƒ�ãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰å‡¦ç�†ã�Œçµ‚ã‚�ã�£ã�Ÿæ™‚ã�«ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹ã�Ÿã‚�ã�®ãƒ‡ãƒªã‚²ãƒ¼ãƒˆ
+        private delegate void ThreadCompletedDelegate();
+        //å‡¦ç�†ã�Œã‚­ãƒ£ãƒ³ã‚»ãƒ«ã�•ã‚Œã�Ÿæ™‚ã�«ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹ã�Ÿã‚�ã�®ãƒ‡ãƒªã‚²ãƒ¼ãƒˆ
+        private delegate void ThreadCanceledDelegate();
+
+        //åˆ¥å‡¦ç�†ã‚’ã�™ã‚‹ã�Ÿã‚�ã�®ã‚¹ãƒ¬ãƒƒãƒ‰
+        private System.Threading.Thread workerThread;
+
+        //ãƒ‡ãƒªã‚²ãƒ¼ãƒˆã�®ä½œæˆ�
+        SetProgressValueDelegate m_progressDlg = null;
+        ThreadCompletedDelegate m_completeDlg = null;
+        ThreadCanceledDelegate m_canceledDlg = null;
+        #endregion
+
+        #region å®šæ•°
+        #region æ³¨æ–‡æ›¸æœ€çµ‚è¡Œæ–‡å­—ãƒ•ã‚©ãƒ¼ãƒžãƒƒãƒˆ
+        /// <summary>
+        /// æ³¨æ–‡æ›¸æœ€çµ‚è¡Œæ–‡å­—ãƒ•ã‚©ãƒ¼ãƒžãƒƒãƒˆ
+        /// </summary>
+        private const string s_LastRowString = "â€»åˆ¥ç´™{0}ä»˜ã�‘æ��å‡ºè¦‹ç©�ã‚‚ã‚Šã�«ã‚ˆã‚‹";
+        #endregion
+
+        #region ã‚·ãƒ¼ãƒˆå��ç§°
+        /// <summary>
+        /// ã‚·ãƒ¼ãƒˆå��ç§°
+        /// </summary>
+        private static readonly string s_SheetName = "å–¶æ¥­ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼";
+        #endregion
+
+        #endregion
+
+        #region å¤‰æ•°
+
+        /// <summary>
+        /// ã‚¨ã‚¯ã‚»ãƒ«å�°åˆ·ã‚¯ãƒ©ã‚¹ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆ
+        /// </summary>
+        private UsedExcel m_UsedExcel = null;
+
+        /// <summary>
+        /// ã‚­ãƒ£ãƒ³ã‚»ãƒ«ãƒœã‚¿ãƒ³ã�Œã‚¯ãƒªãƒƒã‚¯ã�•ã‚Œã�Ÿã�‹ã‚’ç¤ºã�™ãƒ•ãƒ©ã‚°
+        /// </summary>
+        private volatile bool m_Canceled = false;
+
+        /// <summary>
+        /// å�°åˆ·å‡¦ç�†ãƒ—ãƒ­ã‚»ã‚¹æ•°ã‚«ã‚¦ãƒ³ãƒˆï¼ˆä¸‹è¨˜ã�¨æ··å�Œæ³¨æ„�ï¼‰
+        /// </summary>
+        private int m_ProcessCount = 0;
+
+        /// <summary>
+        /// ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ã‚«ã‚¦ãƒ³ãƒˆ
+        /// </summary>
+        private int m_ProgressCount = 0;
+
+        /// <summary>
+        /// å®Ÿè¡Œãƒ€ã‚¤ã‚¢ãƒ­ã‚°é�¸æŠžå€¤
+        /// </summary>
+        private DialogResult m_PrintresRet = DialogResult.Cancel;
+
+        /// <summary>
+        /// çµ‚äº†ã‚³ãƒ¼ãƒ‰
+        /// </summary>
+        private CommonDefine.RetunAnswer m_rtAns = CommonDefine.RetunAnswer.Answer0;
+
+        /// <summary>
+        /// å�°åˆ·å¯¾è±¡ãƒªã‚¹ãƒˆ
+        /// </summary>
+        private List<int> m_PrintList = new List<int>();
+        #endregion
+
+        #region ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// <summary>
+        /// ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// </summary>
+        /// <param name="num"></param>
+        private void SetProgressValue(int num)
+        {
+            // ProgressBarã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+            PrintProgress.Value = num;
+            PrintProgress.Update();
+        }
+        #endregion
+
+        #region å‡¦ç�†ã�Œå®Œäº†ã�—ã�Ÿæ™‚ã�«ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// <summary>
+        /// å‡¦ç�†ã�Œå®Œäº†ã�—ã�Ÿæ™‚ã�«ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// </summary>
+        private void ThreadCompleted()
+        {
+            try
+            {
+                // ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å¤‰æ›´
+                PrintProgress.Visible = false;
+
+                // ãƒœã‚¿ãƒ³ã�®å¤‰æ›´
+                PrintButtonVisbleControl(false);
+
+                // å�°åˆ·
+                if (m_rtAns == CommonDefine.RetunAnswer.Answer0)
+                {
+                    if (m_PrintresRet == DialogResult.No)
+                    {
+                        MessageBox.Show("ä¿�å­˜ã�Œçµ‚äº†ã�—ã�¾ã�—ã�Ÿã€‚", "çµ‚ã€€äº†", MessageBoxButtons.OK, MessageBoxIcon.Information);
+                    }
+                    return;
+                }
+
+                // ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚»ãƒƒãƒˆ
+                string strMessage = "";
+                switch ((int)m_rtAns)
+                {
+                    case (int)CommonDefine.RetunAnswer.Answer1:
+                        strMessage = "ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼";
+                        break;
+                }
+                MessageBox.Show(strMessage, "å�°åˆ·ã‚¨ãƒ©ãƒ¼", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                m_rtAns = CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+        #region å‡¦ç�†ã�Œã‚­ãƒ£ãƒ³ã‚»ãƒ«ã�•ã‚Œã�Ÿæ™‚ã�«ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// <summary>
+        /// å‡¦ç�†ã�Œã‚­ãƒ£ãƒ³ã‚»ãƒ«ã�•ã‚Œã�Ÿæ™‚ã�«ãƒ—ãƒ­ã‚°ãƒ¬ã‚¹ãƒ�ãƒ¼ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+        /// </summary>
+        private void ThreadCanceled()
+        {
+            // ãƒœã‚¿ãƒ³ã�®å¤‰æ›´
+            PrintButtonVisbleControl(false);
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintFormat.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintFormat.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/PrintFormat.cs	(revision 339)
@@ -0,0 +1,205 @@
+ï»¿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Collections;
+using System.Windows.Forms;
+using System.Diagnostics;
+using System.Globalization;
+using System.Drawing;
+using Microsoft.VisualBasic;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    partial class FrmCalendar
+    {
+        #region å�°åˆ·ãƒ¡ã‚¤ãƒ³
+        /// <summary>
+        /// å�°åˆ·å‡¦ç�†
+        /// </summary>
+        public void PrintMain()
+        {
+            //ãƒ‡ãƒªã‚²ãƒ¼ãƒˆã�®ä½œæˆ�
+            m_progressDlg = new SetProgressValueDelegate(SetProgressValue);
+            m_completeDlg = new ThreadCompletedDelegate(ThreadCompleted);
+            m_canceledDlg = new ThreadCanceledDelegate(ThreadCanceled);
+
+            try
+            {
+                // å�°åˆ·ã‚¯ãƒ©ã‚¹
+                m_UsedExcel = new UsedExcel();
+                m_ProgressCount = 0;
+
+                // ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®è¡¨ç¤ºã‚’å¤‰æ›´ã�™ã‚‹
+                this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+
+                //ã‚¨ã‚¯ã‚»ãƒ«ãƒ–ãƒƒã‚¯ã‚ªãƒ¼ãƒ—ãƒ³
+                if (!m_UsedExcel.ExcelBookOpen(System.Environment.CurrentDirectory + CommonDefine.s_ExcelOriginalFileName))
+                {
+                    m_rtAns = CommonDefine.RetunAnswer.Answer5;
+                    return;
+                }
+
+                // ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®è¡¨ç¤ºã‚’å¤‰æ›´ã�™ã‚‹
+                this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+
+                // å�°åˆ·
+                List<string> strParaList = new List<string>();
+                CommonDefine.RetunAnswer rtAns = PrintPage(ref strParaList);
+                if (rtAns != CommonDefine.RetunAnswer.Answer0)
+                {
+                    m_rtAns = rtAns;
+                    return;
+                }
+
+                // ä¸­æ–­å‡¦ç�†
+                if (m_Canceled) return;
+
+                // å�°åˆ·å‡¦ç�†
+                // +++++++++++++++++++++++++ å�°åˆ· +++++++++++++++++++++++++
+                m_UsedExcel.ExcelSheetPrint();
+
+                m_rtAns = CommonDefine.RetunAnswer.Answer0;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                m_rtAns = CommonDefine.RetunAnswer.Answer1;
+            }
+            finally
+            {
+                // å®Œäº†ã�—ã�Ÿã�¨ã��ã�«ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+                this.Invoke(m_completeDlg);
+
+                // ã‚¨ã‚¯ã‚»ãƒ«é–‹æ”¾
+                if (m_UsedExcel != null)
+                {
+                    m_UsedExcel.ExcelBookClose();
+                }
+                m_UsedExcel = null;
+
+                //ãƒ‡ãƒªã‚²ãƒ¼ãƒˆã�®å»ƒæ£„
+                m_progressDlg = null;
+                m_completeDlg = null;
+                m_canceledDlg = null;
+
+                // ã‚¬ãƒ¼ãƒ™ãƒ¼ã‚¸ã‚³ãƒ¬ã‚¯ãƒˆ
+                GC.Collect();
+            }
+        }
+        #endregion
+
+        #region ãƒšãƒ¼ã‚¸å�°åˆ·
+        /// <summary>
+        /// ãƒšãƒ¼ã‚¸å�°åˆ·
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer PrintPage(ref List<string> strParaList)
+        {
+            try
+            {
+                //ã‚·ãƒ¼ãƒˆã�®å�–å¾—
+                m_UsedExcel.ExcelSheetGet(s_SheetName);
+
+                string strChar = string.Empty; ;
+                int RowCnt = 0;
+                int ColCnt = 0;
+
+                int nMonthCnt = 0;
+                int nMonthArrayCnt = m_CalendPage.lblMonthTitle.Length;
+                for (int iy = 0; iy < 4; iy++)
+                {
+                    if (nMonthCnt > nMonthArrayCnt) break;
+                    for (int ix = 0; ix < 3; ix++)
+                    {
+                        string strMonthValue = m_CalendPage.lblMonthTitle[nMonthCnt].Text;
+                        if (strMonthValue.Length == 0) break;
+
+                        // å¹´æœˆã‚’å�–å¾—ã�™ã‚‹
+                        RowCnt = (ix * 8);
+                        ColCnt = (iy * 8) + 4;
+                        strChar = CommonMotions.cnvNumberToAlphaCharacter(RowCnt);
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString(strChar, ColCnt), strMonthValue);
+
+                        int nDaysCnt = 0;
+                        int nDayArrayCnt = m_CalendPage.MonthryData[nMonthCnt].lblDayData.Length;
+
+                        for (int iyD = 0; iyD < 7; iyD++)
+                        {
+                            for (int ixD = 0; ixD < s_ColumnPosision.Length; ixD++)
+                            {
+                                if (iyD == 0)
+                                {
+                                    string strWeekValue = m_CalendPage.MonthryData[nMonthCnt].lblWeekTitle[ixD].Text;
+                                    if (strWeekValue.Length < 1) continue;
+
+                                    // æ›œæ—¥ã‚’å�–å¾—ã�™ã‚‹
+                                    strChar = CommonMotions.cnvNumberToAlphaCharacter((RowCnt + ixD));
+                                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString(strChar, (ColCnt + 1)), strWeekValue);
+                                    continue;
+                                }
+
+                                string strDaysValue = m_CalendPage.MonthryData[nMonthCnt].lblDayData[nDaysCnt].Text;
+                                int nSaveDaysCnt = nDaysCnt;
+                                nDaysCnt++;
+                                if (strDaysValue.Length == 0) continue;
+
+                                // æ—¥ä»˜ã‚’å�–å¾—ã�™ã‚‹
+                                strChar = CommonMotions.cnvNumberToAlphaCharacter((RowCnt + ixD));
+                                string strCell = m_UsedExcel.CreateCellString(strChar, (ColCnt + 1 + iyD));
+                                m_UsedExcel.ExcelCellSet(strCell, strDaysValue);
+                                // ä¼‘æ—¥ã�«è‰²ã‚’ä»˜ã�‘ã‚‹
+                                if (m_CalendPage.MonthryData[nMonthCnt].lblDayData[nSaveDaysCnt].BackColor == Color.Red)
+                                {
+                                    m_UsedExcel.ExcelCellColorSet(strCell, strCell, Color.White, Color.Red);
+                                }
+                            }
+                        }
+                        // ä¸­æ–­å‡¦ç�†
+                        if (m_Canceled)
+                        {
+                            //ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã�•ã‚Œã�Ÿã�¨ã��ã�«ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®å€¤ã‚’å¤‰æ›´ã�™ã‚‹
+                            this.Invoke(m_canceledDlg);
+                            return CommonDefine.RetunAnswer.Answer0;
+                        }
+
+                        // ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®è¡¨ç¤ºã‚’å¤‰æ›´ã�™ã‚‹
+                        this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+
+                        nMonthCnt++;
+                    }
+                }
+
+                // ç¨¼åƒ�æ—¥æ•°ã‚»ãƒƒãƒˆ
+                m_UsedExcel.ExcelCellSet("D36", lblWorkingDays.Text);
+                // ä¼‘æ—¥æ—¥æ•°ã‚»ãƒƒãƒˆ
+                m_UsedExcel.ExcelCellSet("D37", lblHolidyas.Text);
+
+                // ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã�®è¡¨ç¤ºã‚’å¤‰æ›´ã�™ã‚‹
+                this.Invoke(m_progressDlg, new object[] { m_ProcessCount });
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼ï¼š{0}ï¼š{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 339)
@@ -651,10 +651,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDPeriod.Minimum = minval;
                 numUDPeriod.Maximum = maxval;
-                numUDPeriod.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDPeriod.Value = CommonMotions.GetPeriodYear();
             }
             catch (System.Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs	(revision 339)
@@ -459,7 +459,7 @@
                 DispExpExpenses();
 
                 // æœŸè¨­å®š
-                numUDPeriod.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                numUDPeriod.Value = CommonMotions.GetPeriodYear();
                 // ãƒ¢ãƒ¼ãƒ‰è¡¨ç¤º
                 m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringNew;
                 // ã‚³ãƒ³ãƒœãƒœãƒƒã‚¯ã‚¹åˆ�æœŸå€¤
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartmentAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartmentAux.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartmentAux.cs	(revision 339)
@@ -897,11 +897,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDPeriod.Minimum = minval;
-                numUDPeriod.Maximum = CommonMotions.SystemMasterData.BusinessPeriod + 1;
-                numUDPeriod.Value = CommonMotions.SystemMasterData.BusinessPeriod;
-                numUDPeriod.Text = CommonMotions.SystemMasterData.BusinessPeriod.ToString();
+                numUDPeriod.Maximum = maxval + 1;
+                numUDPeriod.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs	(revision 339)
@@ -1724,7 +1724,7 @@
                 }
 
                 // ä»Šå­£çµ‚äº†å¹´æœˆæ—¥ã‚’å�–å¾—ã�™ã‚‹
-                int TargetNo = CommonMotions.SystemMasterData.BusinessPeriod;
+                int TargetNo = CommonMotions.GetPeriodYear();
                 DateTime dtDefaultEnd = CommonMotions.GetOpeningEndDate(TargetNo, false);
 
                 // æ‹…å½“è€…éƒ¨ç½²å±¥æ­´ãƒ‡ãƒ¼ã‚¿ï¼šæœ€çµ‚ãƒ‡ãƒ¼ã‚¿çµ‚äº†å¹´æœˆæ—¥æ›´æ–°
@@ -1849,7 +1849,7 @@
                 cmbBox.Items.Clear();
                 cmbBox.Text = "";
 
-                int nTargetCount = CommonMotions.SystemMasterData.BusinessPeriod;
+                int nTargetCount = CommonMotions.GetPeriodYear();
                 // éƒ¨ç½²ãƒžã‚¹ã‚¿ã‚’æ¤œç´¢ã�™ã‚‹
                 StringBuilder strSQL = new StringBuilder();
                 if (bDspExistsData)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmCustomCount.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmCustomCount.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmCustomCount.cs	(revision 339)
@@ -160,8 +160,8 @@
                     if (nCount < 1) continue;
 
                     // ä»ŠæœŸã�¨æ�¥æœŸã�¯ãƒ�ã‚§ãƒƒã‚¯ï¼¯ï¼®
-                    if (nPeriod == CommonMotions.SystemMasterData.BusinessPeriod
-                        || nPeriod == (CommonMotions.SystemMasterData.BusinessPeriod + 1)) bCheck = true;
+                    int nNowYear = CommonMotions.GetPeriodYear();
+                    if (nPeriod == nNowYear || nPeriod == (nNowYear + 1)) bCheck = true;
 
                     int nRowCnt = dgv.Rows.Add(no++
                                             , bCheck
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 339)
@@ -1756,10 +1756,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUPObject.Minimum = minval;
                 numUPObject.Maximum = maxval;
-                if (bFirst) numUPObject.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                if (bFirst) numUPObject.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
@@ -4517,11 +4517,12 @@
                 string strPeriod = CreateConstructionProjectsSQL();
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 numUDConstPro.Minimum = minval;
                 numUDConstPro.Maximum = maxval;
-                if (minval <= CommonMotions.SystemMasterData.BusinessPeriod && CommonMotions.SystemMasterData.BusinessPeriod <= maxval)
-                    numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                int nNowYear = CommonMotions.GetPeriodYear();
+                if (minval <= nNowYear && nNowYear <= maxval)
+                    numUDConstPro.Value = nNowYear;
                 else
                     numUDConstPro.Value = maxval;
 
@@ -6354,7 +6355,7 @@
                     // å…¥ç¤¾æ—¥ã�Œè©²å½“ç¯„å›²å†…ã�ªã‚‰ã�°å¤‰æ›´
                     if (dtDefStart <= dtInTime && dtInTime <= dtDefComp) dtStart = dtInTime;
                     // é�¸æŠžæœŸã�Œä»ŠæœŸä»¥å‰�ã�¯æœŸæœ«ã�«å¤‰æ›´
-                    if (SalseGraphNum.Value < CommonMotions.SystemMasterData.BusinessPeriod) dtComp = dtDefComp;
+                    if (SalseGraphNum.Value < CommonMotions.GetPeriodYear()) dtComp = dtDefComp;
                     // é€€ç¤¾æ—¥ã�Œè©²å½“ç¯„å›²å†…ã�ªã‚‰ã�°å¤‰æ›´
                     if (dtDefStart <= dtOutTime && dtOutTime <= dtDefComp) dtComp = dtOutTime;
 
@@ -6564,10 +6565,10 @@
                 // ãƒ‡ãƒ¼ã‚¿ã�«ã�‚ã‚‹äº‹æ¥­æœŸã�¨ç�¾åœ¨ã�®äº‹æ¥­ã‚»ãƒƒãƒˆ
                 int minval = 0;
                 int maxval = 0;
-                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                CommonMotions.GetPeriodYearMinMax(ref minval, ref maxval);
                 SalseGraphNum.Minimum = minval;
                 SalseGraphNum.Maximum = maxval;
-                SalseGraphNum.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+                SalseGraphNum.Value = CommonMotions.GetPeriodYear();
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManage.xlsx
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 339)
@@ -145,6 +145,7 @@
     <Compile Include="Common\Process\ClsExcute.cs" />
     <Compile Include="Common\CommonDefine.cs" />
     <Compile Include="Common\Office\UsedWord.cs" />
+    <Compile Include="DataModel\DepartmentCostData.cs" />
     <Compile Include="DataModel\PersonExpensesCost.cs" />
     <Compile Include="DataModel\SalaryClass.cs" />
     <Compile Include="DataModel\GridCellStyleMember.cs" />
@@ -224,6 +225,7 @@
     <Compile Include="DB\IOAccess\IOAttendanceDailyData.cs" />
     <Compile Include="DB\IOAccess\IOAttendanceData.cs" />
     <Compile Include="DB\IOAccess\IOBankBusinessDayMaster.cs" />
+    <Compile Include="DB\IOAccess\IODepartmentCostData.cs" />
     <Compile Include="DB\IOAccess\IODirectAccess.cs" />
     <Compile Include="DB\IOAccess\IOBillingData.cs" />
     <Compile Include="DB\IOAccess\IOBillingDataDetail.cs" />
@@ -337,6 +339,15 @@
     <Compile Include="Forms\DataEntry\CostomerRegist\PrintFormat.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Forms\DataEntry\DepartmentCost\FrmDepartmentCostList.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\DepartmentCost\FrmDepartmentCostList.designer.cs">
+      <DependentUpon>FrmDepartmentCostList.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\DepartmentCost\FrmDepartmentCostListAux.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\DataEntry\DepExpenssList\FrmDepExpenssList.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -798,6 +809,12 @@
     <Compile Include="Forms\Master\BankBusinessDay\FrmBBDAux.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Forms\Master\Calender\PrintCommon.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Calender\PrintFormat.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\Master\CategoryName\FrmCategoryNameMaster.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1458,6 +1475,9 @@
     <EmbeddedResource Include="Forms\DataEntry\CostomerRegist\FrmCostomerRegistList.resx">
       <DependentUpon>FrmCostomerRegistList.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\DepartmentCost\FrmDepartmentCostList.resx">
+      <DependentUpon>FrmDepartmentCostList.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\DepExpenssList\FrmDepExpenssList.resx">
       <DependentUpon>FrmDepExpenssList.cs</DependentUpon>
     </EmbeddedResource>
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 338)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 339)
@@ -32,7 +32,7 @@
 // ã�™ã�¹ã�¦ã�®å€¤ã‚’æŒ‡å®šã�™ã‚‹ã�‹ã€�ä¸‹ã�®ã‚ˆã�†ã�« '*' ã‚’ä½¿ã�£ã�¦ãƒ“ãƒ«ãƒ‰ã�Šã‚ˆã�³ãƒªãƒ“ã‚¸ãƒ§ãƒ³ç•ªå�·ã‚’ 
 // æ—¢å®šå€¤ã�«ã�™ã‚‹ã�“ã�¨ã�Œã�§ã��ã�¾ã�™:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.1.172")]
-[assembly: AssemblyFileVersion("1.0.1.172")]
+[assembly: AssemblyVersion("1.0.1.175")]
+[assembly: AssemblyFileVersion("1.0.1.175")]
 // Log4netã‚’ä½¿ç”¨ã�™ã‚‹
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
