Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 352)
@@ -652,9 +652,21 @@
         /// </summary>
         public enum TabCotegory
         {
+            /// <summary>
+            /// タブ区分： 0:合計
+            /// </summary>
             Total = 0,
+            /// <summary>
+            /// タブ区分： 1:大項目
+            /// </summary>
             Component,
+            /// <summary>
+            /// タブ区分： 2:中項目
+            /// </summary>
             Item,
+            /// <summary>
+            /// タブ区分： 3:小項目
+            /// </summary>
             Spec,
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 352)
@@ -14,7 +14,7 @@
         /// <summary>
         /// 本体バージョン
         /// </summary>
-        public static int s_SystemVersion = 204;
+        public static int s_SystemVersion = 205;
 
         /// <summary>
         /// コピー・環境バージョン
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCommonCosts.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCommonCosts.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCommonCosts.cs	(revision 352)
@@ -4,32 +4,32 @@
 using System.Text;
 using System.Threading.Tasks;
 
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.Master;
+
 namespace ProcessManagement.Common
 {
     /// <summary>
-    /// 工事共通費定義クラス
+    /// 工事費用定義クラス
     /// </summary>
-    public static class ClsCommonCosts
+    public class ClsCommonCosts
     {
-        /// <summary>
-        /// 積算予算マスタ使用キー定義
-        /// </summary>
-
-        #region 共通仮設費
-        /// <summary>
-        /// 共通仮設費[構成キー]
-        /// 1	共通仮設工事費（積み上げ費含む）※公共入札工事用
-        /// </summary>
-        public static int s_CommunityCompCode = 1;
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
         #endregion
 
-        #region 発生剤処分費
+        #region メンバ変数
         /// <summary>
-        /// 発生剤処分費[構成キー]
-        /// 18	発生材処分費　※公共入札工事用
+        /// 積算予算マスタ使用キー定義
         /// </summary>
-        public static int s_MaterialDisposal = 18;
-        #endregion
 
         #region 入札物件構成キー群
         /// <summary>
@@ -43,15 +43,45 @@
         /// 7	一般管理費　※公共入札工事用
         /// 18	発生材処分費　※公共入札工事用
         /// </summary>
-        public static int[] s_BiddingCode = new int[] { 1, 2, 3, 4, 5, 6, 7, 18 };
+        //public static int[] s_BiddingCode = new int[] { 1, 2, 3, 4, 5, 6, 7, 18 };
+        private List<int> m_BiddingCode = new List<int>();
         #endregion
 
+        #region 工事種別(対象となる公共工事の工事種別)
+        /// <summary>
+        /// 対象工事タイプ
+        /// 9	公共工事　新築（元請）
+        /// 10	公共工事　新築（下請）
+        /// 4	公共工事　改修（元請）
+        /// 5	公共工事　改修（下請）
+        /// </summary>
+        //private static int[,] s_ConstructionType = new int[,] { { 9, 10 }, { 4, 5 } };
+        private List<int> m_RepairConstrType = new List<int>();
+        private List<int> m_CreateConstrType = new List<int>();
+        #endregion
+
+        #region 共通仮設費
+        /// <summary>
+        /// 共通仮設費[構成キー]
+        /// 1	共通仮設工事費（積み上げ費含む）※公共入札工事用
+        /// </summary>
+        private List<int> m_Community = new List<int>();
+        #endregion
+
+        #region 発生剤処分費
+        /// <summary>
+        /// 発生剤処分費[構成キー]
+        /// 18	発生材処分費　※公共入札工事用
+        /// </summary>
+        private List<int> m_MaterialDisposal = new List<int>();
+        #endregion
+
         #region 積み上げ共通仮設費
         /// <summary>
         /// 積み上げ共通仮設費[工種キー]
         /// 10	積み上げ共通仮設費　※公共工事
         /// </summary>
-        public static int s_PileUpCommonTempory = 10;
+        private List<KeyValuePair<int, int>> m_PileUpComTempo = new List<KeyValuePair<int, int>>();
         #endregion
 
         #region 共通仮設算定率
@@ -59,7 +89,7 @@
         /// 共通仮設算定率[工種キー]
         /// 11	共通仮設算定率　※公共工事
         /// </summary>
-        public static int s_ComputationCommonTempory = 11;
+        private List<int> m_ComputationComTempo = new List<int>();
         #endregion
 
         #region 現場管理費
@@ -67,7 +97,7 @@
         /// 現場管理費[構成キー]
         /// 6	現場管理費　※公共入札工事用
         /// </summary>
-        public static int s_FieldManagementCompCode = 6;
+        private List<int> m_FieldManagement = new List<int>();
         #endregion
 
         #region 一般管理費
@@ -75,18 +105,591 @@
         /// 一般管理費[構成キー]
         /// 7	一般管理費　※公共入札工事用
         /// </summary>
-        public static int s_NormalManagementCompCode = 7;
+        private List<int> m_NormalManagement = new List<int>();
         #endregion
 
-        #region 工事種別(対象となる公共工事の工事種別)
+        #endregion
+
+        #region プロパティ
+        #region 共通仮設費[構成キー]
         /// <summary>
-        /// 対象工事タイプ
-        /// 9	公共工事　新築（元請）
-        /// 10	公共工事　新築（下請）
-        /// 4	公共工事　改修（元請）
-        /// 5	公共工事　改修（下請）
+        /// 共通仮設費[構成キー]
         /// </summary>
-        public static int[,] s_ConstructionType = new int[,] { { 9, 10 }, { 4, 5 } };
+        public int CommonTemporyPublic
+        {
+            get { return GetCommunityCompCode(true); }
+        }
         #endregion
+
+        #region 発生剤処分費
+        /// <summary>
+        /// 発生剤処分費[構成キー]
+        /// </summary>
+        public int MaterialDisposalPublic
+        {
+            get { return GetMaterialDisposal(true); }
+        }
+        #endregion
+
+        #region 積み上げ共通仮設費
+        /// <summary>
+        /// 積み上げ共通仮設費[工種キー]
+        /// </summary>
+        public int PileUpComTempoPublic
+        {
+            get { return GetPileUpCommonTempory(true); }
+        }
+        #endregion
+
+        #region 共通仮設算定率
+        /// <summary>
+        /// 共通仮設算定率[工種キー]
+        /// </summary>
+        public int ComputationComTempoPublic
+        {
+            get { return GetComputationCommonTempory(true); }
+        }
+        #endregion
+
+        #region 現場管理費（公共）
+        /// <summary>
+        /// 現場管理費[構成キー]（公共）
+        /// </summary>
+        public int FieldManagementPublic
+        {
+            get { return GetFieldManagementCompCode(true); }
+        }
+        #endregion
+
+        #region 現場管理費（民間）
+        /// <summary>
+        /// 現場管理費[構成キー]（民間）
+        /// </summary>
+        public int FieldManagementPrivate
+        {
+            get { return GetFieldManagementCompCode(false); }
+        }
+        #endregion
+
+        #region 一般管理費（公共）
+        /// <summary>
+        /// 一般管理費[構成キー]（公共）
+        /// </summary>
+        public int NormalManagementPublic
+        {
+            get { return GetNormalManagementCompCode(true); }
+        }
+        #endregion
+
+        #region 一般管理費（民間）
+        /// <summary>
+        /// 一般管理費[構成キー]（民間）
+        /// </summary>
+        public int NormalManagementPrivate
+        {
+            get { return GetNormalManagementCompCode(false); }
+        }
+        #endregion
+
+        #region 公共工事コード（改修）
+        /// <summary>
+        /// 公共工事コード（改修）
+        /// </summary>
+        public List<int> RepairConstrType
+        {
+            get { return m_RepairConstrType; }
+        }
+        #endregion
+
+        #region 公共工事コード（新築）
+        /// <summary>
+        /// 公共工事コード（新築）
+        /// </summary>
+        public List<int> CreateConstrType
+        {
+            get { return m_CreateConstrType; }
+        }
+        #endregion
+
+        #region 入札物件構成キー群
+        /// <summary>
+        /// 入札物件構成キー群
+        /// </summary>
+        public List<int> BiddingCode
+        {
+            get { return m_BiddingCode; }
+        }
+        #endregion
+
+        #endregion
+
+        #region コンストラクタ
+        public ClsCommonCosts()
+        {
+            // 初期データセット
+            SetInitValue();
+        }
+        #endregion
+
+        #region 初期データセット
+        /// <summary>
+        /// 初期データセット
+        /// </summary>
+        private void SetInitValue()
+        {
+            try
+            {
+                // 予算書集計コードマスタ取得リスト
+                List<BudgetSumCode> DataList = new List<BudgetSumCode>();
+                // 予算書集計コードマスタ取得
+                GetBudgetList(ref DataList);
+
+                //  入札物件構成キー群セット
+                SetBiddingCode(DataList);
+
+                // 共通仮設費　構成キーセット
+                SetCommunityCompCode(DataList);
+                // 積み上げ共通仮設費　工種キーセット
+                SetPileUpCommonTempory(DataList);
+                // 発生剤処分費　構成キーセット
+                SetMaterialDisposal(DataList);
+                // 現場管理費　構成キーセット
+                SetFieldManagementCompCode(DataList);
+                // 一般管理費　構成キーセット
+                SetNormalManagementCompCode(DataList);
+
+                // 公共工事コード取得処理
+                GetConstrTypeList();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 予算書集計コードマスタ取得
+        /// <summary>
+        /// 予算書集計コードマスタ取得
+        /// </summary>
+        private void GetBudgetList(ref List<BudgetSumCode> DataList)
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append(" Order By BlockCode, GroupCode, ComponentCode, ItemCode");
+                bscDB.SelectAction(strSQL.ToString(), ref DataList);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 共通仮設費　構成キーセット
+        /// <summary>
+        /// 共通仮設費　構成キーセット
+        /// </summary>
+        private void SetCommunityCompCode(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.NetConstruction
+                                                            && x.GroupCode == (int)FrmBudgetItem.GroupNo.CommonTemp
+                                                            && x.ItemCode == 0)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_Community.Add(CurRec.ComponentCode);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 積み上げ共通仮設費　工種キーセット
+        /// <summary>
+        /// 積み上げ共通仮設費　工種キーセット
+        /// </summary>
+        private void SetPileUpCommonTempory(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.NetConstruction
+                                                            && x.GroupCode == (int)FrmBudgetItem.GroupNo.CommonTemp
+                                                            && x.ItemCode > 0)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_PileUpComTempo.Add(new KeyValuePair<int, int>(CurRec.ComponentCode, CurRec.ItemCode));
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 発生剤処分費　構成キーセット
+        /// <summary>
+        /// 発生剤処分費　構成キーセット
+        /// </summary>
+        private void SetMaterialDisposal(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.TotalCosts
+                                                            && x.GroupCode == (int)FrmBudgetItem.GroupNo.Dispose)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_MaterialDisposal.Add(CurRec.ComponentCode);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 現場管理費　構成キーセット
+        /// <summary>
+        /// 現場管理費　構成キーセット
+        /// </summary>
+        private void SetFieldManagementCompCode(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.ConstructionCosts
+                                                            && x.GroupCode == (int)FrmBudgetItem.GroupNo.FieldManage)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_FieldManagement.Add(CurRec.ComponentCode);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 一般管理費　構成キーセット
+        /// <summary>
+        /// 一般管理費　構成キーセット
+        /// </summary>
+        private void SetNormalManagementCompCode(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.ConstructionPrice
+                                                            && x.GroupCode == (int)FrmBudgetItem.GroupNo.UsualManage)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_NormalManagement.Add(CurRec.ComponentCode);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 公共工事コード取得処理
+        /// <summary>
+        /// 公共工事コード取得処理
+        /// </summary>
+        private void GetConstrTypeList()
+        {
+            IOMConstructionType ctDB = new IOMConstructionType();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.AppendFormat(" Where PublicFlg = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
+                strSQL.Append(" Order by TypeCode ASC");
+                List<ConstructionTypeMaster> ctList = new List<ConstructionTypeMaster>();
+                ctDB.SelectAction(strSQL.ToString(), ref ctList);
+
+                m_RepairConstrType.Clear();
+                m_CreateConstrType.Clear();
+
+                foreach (ConstructionTypeMaster CurRec in ctList)
+                {
+                    switch (CurRec.RepairFlg)
+                    {
+                        case (int)ConstructionTypeMaster.RepairFlgDef.Create:
+                            // 新築
+                            m_CreateConstrType.Add(CurRec.TypeCode);
+                            break;
+                        case (int)ConstructionTypeMaster.RepairFlgDef.Modify:
+                            // 改修
+                            m_RepairConstrType.Add(CurRec.TypeCode);
+                            break;
+                    }
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                ctDB.close(); ctDB = null;
+            }
+        }
+        #endregion
+
+        #region  入札物件構成キー群セット
+        /// <summary>
+        ///  入札物件構成キー群セット
+        /// </summary>
+        private void SetBiddingCode(List<BudgetSumCode> DataList)
+        {
+            try
+            {
+                BudgetSumCode[] work = DataList.Where(x => x.BlockCode == (int)FrmBudgetItem.BlockNo.PublicWorks)
+                                                .OrderBy(y => y.ComponentCode)
+                                                .ToArray();
+                if (work.Count() < 1) return;
+
+                foreach (BudgetSumCode CurRec in work)
+                {
+                    m_BiddingCode.Add(CurRec.ComponentCode);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 共通仮設費[構成キー]取得処理
+        /// <summary>
+        /// 共通仮設費[構成キー]取得処理
+        /// </summary>
+        private int GetCommunityCompCode(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (int CurValue in m_Community)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 発生剤処分費[構成キー]取得処理
+        /// <summary>
+        /// 発生剤処分費[構成キー]取得処理
+        /// </summary>
+        private int GetMaterialDisposal(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (int CurValue in m_MaterialDisposal)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 積み上げ共通仮設費[工種キー]取得処理
+        /// <summary>
+        /// 積み上げ共通仮設費[工種キー]取得処理
+        /// </summary>
+        private int GetPileUpCommonTempory(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (KeyValuePair<int, int> CurValue in m_PileUpComTempo)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue.Key).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue.Value;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 共通仮設算定率[工種キー]取得処理
+        /// <summary>
+        /// 共通仮設算定率[工種キー]取得処理
+        /// </summary>
+        private int GetComputationCommonTempory(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (int CurValue in m_ComputationComTempo)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 現場管理費[構成キー]取得処理
+        /// <summary>
+        /// 現場管理費[構成キー]取得処理
+        /// </summary>
+        private int GetFieldManagementCompCode(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (int CurValue in m_FieldManagement)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 一般管理費[構成キー]取得処理
+        /// <summary>
+        /// 一般管理費[構成キー]取得処理
+        /// </summary>
+        private int GetNormalManagementCompCode(bool PublicFlg)
+        {
+            try
+            {
+                int GetValue = -1;
+                foreach (int CurValue in m_NormalManagement)
+                {
+                    List<int> RefList = m_BiddingCode.Where(x => x == CurValue).ToList<int>();
+                    if (PublicFlg)
+                    {   // 公共入札工事は無ければ次データ
+                        if (RefList.Count() < 1) continue;
+                    }
+                    else
+                    {   // 公共入札工事以外はあれば次データ
+                        if (RefList.Count() > 0) continue;
+                    }
+                    GetValue = CurValue;
+                    break;
+                }
+
+                return GetValue;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCostCulculation.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCostCulculation.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCostCulculation.cs	(revision 352)
@@ -33,6 +33,8 @@
         #endregion
 
         #region 定数
+        
+        #region ----- 共通仮設率計算係数テーブル
         /// <summary>
         /// 共通仮設率計算係数テーブル
         /// 0:区分設定金額
@@ -53,6 +55,52 @@
                                                                     {  5000000.0, 4.86, 5.51, 10.94, -0.0952, 12.40, -0.0952, 12.15, -0.1186, 0.0882 },     // 新営機械設備工事
                                                                     {  3000000.0, 1.73, 4.96,  2.44, -0.0433,  7.02, -0.0433, 12.21, -0.2596, 0.6874 },     // 改修機械設備工事
                                                                 };
+        private enum CommonTempListDef
+        {
+            /// <summary>
+            /// 0:区分設定金額
+            /// </summary>
+            SetAmount = 0,
+            /// <summary>
+            /// 1:区分設定金額以下係数　下限
+            /// </summary>
+            CoefficientLow,
+            /// <summary>
+            /// 2:区分設定金額以下係数　上限
+            /// </summary>
+            CoefficientHigh,
+            /// <summary>
+            /// 3:区分設定金額超係数　　下限
+            /// </summary>
+            CoefficientOverLow,
+            /// <summary>
+            /// 4:区分設定金額超係数　　下限指数
+            /// </summary>
+            CoefficientOverLowIndex,
+            /// <summary>
+            /// 5:区分設定金額超係数　　上限
+            /// </summary>
+            CoefficientOverHigh,
+            /// <summary>
+            /// 6:区分設定金額超係数　　上限指数
+            /// </summary>
+            CoefficientOverHighIndex,
+            /// <summary>
+            /// 7:共通仮設費率係数
+            /// </summary>
+            CommonCoefficient,
+            /// <summary>
+            /// 8:工事費指数
+            /// </summary>
+            ConstrCostsIndex,
+            /// <summary>
+            /// 9:工期指数
+            /// </summary>
+            ConstrTimesIndex,
+        }
+        #endregion
+
+        #region ----- 共通仮設率計算係数テーブル（昇降機設備工事）
         /// <summary>
         /// 共通仮設率計算係数テーブル（昇降機設備工事）
         /// 0:区分設定金額以下
@@ -63,7 +111,9 @@
         /// 5:区分設定金額超係数
         /// </summary>
         private static double[] CommonTempList2 = new double[] { 10000000.0, 3.08, 500000000.0, 7.89, -0.1021, 2.07 };
+        #endregion
 
+        #region ----- 現場管理率計算係数テーブル
         /// <summary>
         /// 現場管理率計算係数テーブル
         /// 0:区分設定金額
@@ -84,6 +134,9 @@
                                                                     {   5000000.0, 17.14, 31.23,  90.67, -0.1956,  165.22, -0.1956, 152.72, -0.3085, 0.4222 },  // 新営機械設備工事
                                                                     {   3000000.0, 15.25, 42.07, 169.65, -0.3009,  467.95, -0.3009, 825.85, -0.5122, 0.6648 },  // 改修機械設備工事
                                                                 };
+        #endregion
+
+        #region ----- 現場管理率計算係数テーブル（昇降機設備工事）
         /// <summary>
         /// 現場管理率計算係数テーブル（昇降機設備工事）
         /// 0:区分設定金額以下
@@ -94,8 +147,9 @@
         /// 5:区分設定金額超係数
         /// </summary>
         private static double[] FieldManageList2 = new double[] { 10000000.0, 3.98, 500000000.0, 15.10, -0.1449, 2.26 };
+        #endregion
 
-
+        #region ----- 一般管理率計算係数テーブル（昇降機設備工事）
         /// <summary>
         /// 一般管理率計算係数テーブル（昇降機設備工事）
         /// 0:区分設定金額以下
@@ -109,11 +163,16 @@
                                                                     { 3000000.0, 11.80, 2000000000.0, 17.286, 1.577, 7.35 },                                        // 電気設備工事
                                                                     { 3000000.0, 11.20, 2000000000.0, 15.741, 1.305, 7.52 }                                         // 電気設備工事
                                                                     };
+        #endregion
+
+        #region ----- 入力単位（千円）
         /// <summary>
         /// 入力単位（千円）
         /// </summary>
         private static double s_InputUnit = 1000.0;
         #endregion
+        
+        #endregion
 
         #region 共通仮設費計算（新営建築工事～回収機械設備工事）
         /// <summary>
@@ -132,19 +191,19 @@
             try
             {
                 // 金額で係数が違う
-                if (ConstValue <= ClsCostCulculation.CommonTempList[ExecNo, 0])
+                if (ConstValue <= ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.SetAmount])
                 {   // 1千万円以下
 
                     // 1千万円で計算する（金額を千円単位にする）
-                    double BaseValue = (ClsCostCulculation.CommonTempList[ExecNo, 0] / s_InputUnit);
+                    double BaseValue = (ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.SetAmount] / s_InputUnit);
                     // 算定値
-                    CalValue = ClsCostCulculation.CommonTempList[ExecNo, 7]
-                            * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, 8])
-                            * System.Math.Pow(ConstTimes, ClsCostCulculation.CommonTempList[ExecNo, 9]);
+                    CalValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CommonCoefficient]
+                            * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.ConstrCostsIndex])
+                            * System.Math.Pow(ConstTimes, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.ConstrTimesIndex]);
                     // 上限値
-                    HighValue = ClsCostCulculation.CommonTempList[ExecNo, 2];
+                    HighValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientHigh];
                     // 下限値
-                    LowValue = ClsCostCulculation.CommonTempList[ExecNo, 1];
+                    LowValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientLow];
                 }
                 else
                 {   // 1千万円超
@@ -151,13 +210,15 @@
                     // 金額を千円単位にする
                     double BaseValue = (ConstValue / s_InputUnit);
                     // 算定値
-                    CalValue = ClsCostCulculation.CommonTempList[ExecNo, 7]
-                            * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, 8])
-                            * System.Math.Pow(ConstTimes, ClsCostCulculation.CommonTempList[ExecNo, 9]);
+                    CalValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CommonCoefficient]
+                            * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.ConstrCostsIndex])
+                            * System.Math.Pow(ConstTimes, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.ConstrTimesIndex]);
                     // 上限値
-                    HighValue = ClsCostCulculation.CommonTempList[ExecNo, 5] * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, 6]);
+                    HighValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientOverHigh] 
+                                * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientOverHighIndex]);
                     // 下限値
-                    LowValue = ClsCostCulculation.CommonTempList[ExecNo, 3] * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, 4]);
+                    LowValue = ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientOverLow]
+                                * System.Math.Pow(BaseValue, ClsCostCulculation.CommonTempList[ExecNo, (int)CommonTempListDef.CoefficientOverLowIndex]);
                 }
 
                 ExecuteValue = CalValue;
@@ -209,9 +270,9 @@
         }
         #endregion
 
-        #region 現場管理費計算（新営建築工事～回収機械設備工事）
+        #region 現場管理費計算（建築工事（新営）～機械設備工事（改修））
         /// <summary>
-        /// 現場管理費計算（新営建築工事～回収機械設備工事）
+        /// 現場管理費計算（建築工事（新営）～機械設備工事（改修））
         /// </summary>
         /// <param name="ExecNo">計算番号</param>
         /// <param name="ConstValue">直接工事費</param>
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 352)
@@ -129,6 +129,7 @@
             MaterialItem = 128,                 // 128:資材品目マスタ
             SalesConfirm = 129,                 // 129:売上確認
             BankBusinessDay = 130,              // 130:銀行営業日マスタ
+            BudgetCodeSum = 131,                // 131:予算書集計コードマスタ
         }
         #endregion
 
@@ -202,7 +203,6 @@
                                                                                 { (int)ProcessExecuteNo.SafetyPatrol,           "安全パトロール申請"},
                                                                                 { (int)ProcessExecuteNo.ReqSumTotalList,        "手間・通常業者一覧－表示"},
                                                                                 { (int)ProcessExecuteNo.RequestPrintList,       "請求書印刷一覧－表示"},
-
         };
 
         #endregion
@@ -242,6 +242,7 @@
                                                                                 { (int)MaintenanceExecuteNo.MaterialItem,               "資材品目登録"},               // 128
                                                                                 { (int)MaintenanceExecuteNo.SalesConfirm,               "売上順一覧"},                 // 129
                                                                                 { (int)MaintenanceExecuteNo.BankBusinessDay,            "銀行営業日登録"},             // 130
+                                                                                { (int)MaintenanceExecuteNo.BudgetCodeSum,              "予算書集計コード登録" },      // 131
 
                                                                                 };
         #endregion
@@ -670,11 +671,11 @@
                             ProcessExecuteNo_ReqBillingStatus(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.ReqBillingStatInput:                  // 42:請求書状況入力
+                        case (int)ProcessExecuteNo.ReqBillingStatInput:                 // 42:請求書状況入力
                             ProcessExecuteNo_ReqBillingStatInput(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.SafetyPatrol:                         // 43:安全パトロール申請
+                        case (int)ProcessExecuteNo.SafetyPatrol:                        // 43:安全パトロール申請
                             ProcessExecuteNo_SafetyPatrol(m_ProcControlPara[NowPoint]);
                             break;
 
@@ -685,7 +686,7 @@
                             ProcessExecuteNo_RequestPrintList(m_ProcControlPara[NowPoint]);
                             break;
 
-                        #endregion
+                            #endregion
 
                         #region マスタメンテ
                         // ----- マスタメンテ
@@ -779,6 +780,9 @@
                         case (int)MaintenanceExecuteNo.BankBusinessDay:                     // 130:銀行営業日
                             MaintenanceExecuteNo_BBD(m_ProcControlPara[NowPoint]);
                             break;
+                        case (int)MaintenanceExecuteNo.BudgetCodeSum:                       // 131:予算書集計コードマスタ
+                            MaintenanceExecuteNo_BudgetSumCode(m_ProcControlPara[NowPoint]);
+                            break;
 
 
                         #endregion
@@ -3711,8 +3715,42 @@
         }
         #endregion
 
+        #region 予算書集計コードマスタ
+        /// <summary>
+        /// 予算書集計コードマスタ
+        /// </summary>
+        public static void MaintenanceExecuteNo_BudgetSumCode(ProcessParameter CurrentPara)
+        {
+            // 
+            FrmBudgetItem frm = new FrmBudgetItem();
+            try
+            {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.BankBusinessDay;
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
         #endregion
 
+        #endregion
+
         #region サブフォーム
         #region 掲示板メッセージ入力
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs	(revision 352)
@@ -485,6 +485,9 @@
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
+                // 権限ランク取得
+                int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者権限
+
                 // ----- 対象者コードが5桁以下ならば部署コード
                 if (SourceCode < 99999)
                 {
@@ -494,11 +497,15 @@
                         return true;
                     }
 
-                    // アクセス権対象部署の場合はOK
-                    PersonDepartmentMaster FindDepRec = CommonMotions.LoginUserRefDepartment.Find(x => x.DepartmentCode == SourceCode);
-                    if (FindDepRec != null)
+                    // 一般権限者以外は参照部署チェック
+                    if (CommonMotions.LoginUserSecurity.SecRank != CommonDefine.SecurityRankList[NRank].Key)
                     {
-                        if (FindDepRec.DepartmentCode > 0) return true;
+                        // アクセス権対象部署の場合はOK
+                        PersonDepartmentMaster FindDepRec = CommonMotions.LoginUserRefDepartment.Find(x => x.DepartmentCode == SourceCode);
+                        if (FindDepRec != null)
+                        {
+                            if (FindDepRec.DepartmentCode > 0) return true;
+                        }
                     }
 
                     return false;
@@ -517,11 +524,15 @@
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 if (!PersonDB.SelectAction(strSQL.ToString(), ref PersonRec)) return false;
 
-                // 対象部署所属者はOK
-                PersonDepartmentMaster FindRec = CommonMotions.LoginUserRefDepartment.Find(x => x.DepartmentCode == PersonRec.DepartmentCode);
-                if (FindRec != null)
+                // 一般権限者以外は参照部署チェック
+                if (CommonMotions.LoginUserSecurity.SecRank != CommonDefine.SecurityRankList[NRank].Key)
                 {
-                    if (FindRec.DepartmentCode > 0) return true;
+                    // 対象部署所属者はOK
+                    PersonDepartmentMaster FindRec = CommonMotions.LoginUserRefDepartment.Find(x => x.DepartmentCode == PersonRec.DepartmentCode);
+                    if (FindRec != null)
+                    {
+                        if (FindRec.DepartmentCode > 0) return true;
+                    }
                 }
                     
                 return false;
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs	(revision 352)
@@ -640,16 +640,9 @@
             {
                 bool bRet = false;
 
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    bRet = GetSecurityLevel(CommonMotions.LoginUserData.PersonCode, ref SecCode, ref SecName);
-                }
-                else
-                {
-                    SecCode = CommonMotions.LoginUserSecurity.SecCode;
-                    SecName = CommonMotions.LoginUserSecurity.SecName;
-                    bRet = true;
-                }
+                SecCode = CommonMotions.LoginUserSecurity.SecCode;
+                SecName = CommonMotions.LoginUserSecurity.SecName;
+                bRet = true;
 
                 return bRet;
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs	(nonexistent)
@@ -1,335 +0,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Collections;
-
-using log4net;
-using MySql.Data.MySqlClient;
-
-using ProcessManagement.DB.MySql;
-using ProcessManagement.DB.Core;
-using ProcessManagement.DataModel;
-
-using ProcessManagement.Common;
-
-namespace ProcessManagement.DB.IOAccess
-{
-    /// <summary>
-    /// 構成工事種別関連マスタアクセスクラス
-    /// </summary>
-    public class IOMComponentToType : MySqlProcess
-    {
-        #region 定義部
-        /// <summary>
-        /// log4netログを使用する
-        /// </summary>
-        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
-        #endregion
-
-        #region 定数
-        /// <summary>
-        /// 構成工事種別関連マスタフィールド並び
-        /// </summary>
-        public enum NameColumn
-        {
-            ComponentCode = 0,
-            ItemCode,
-            DisplayOrder,
-            EntryDate,
-            UpdateDate,
-        }
-        #endregion
-
-        #region コンストラクタ
-        /// <summary>
-        /// コンストラクタ
-        /// </summary>
-        /// <param name="ConnectionString"></param>
-        public IOMComponentToType()
-            : base(DBCommon.Instance.DBConnectString)
-        {
-        }
-
-        #endregion
-
-        #region 構成工事種別関連マスタ検索文字列作成
-        /// <summary>
-        /// 構成工事種別関連マスタ検索文字列作成
-        /// </summary>
-        /// <param name="AddSQLString">検索条件SQL文字列</param>
-        /// <param name="data">構成工事種別関連マスタデータ</param>
-        /// <returns>true：成功 false：失敗</returns>
-        private string CreateSelectSQL()
-        {
-            // SQL作成（DateTime型が変換できないのでCharに変換しておく）
-            StringBuilder strcmd = new StringBuilder();
-            strcmd.Append("SELECT");
-            strcmd.Append("  ComponentCode");
-            strcmd.Append(", ItemCode");
-            strcmd.Append(", DisplayOrder");
-            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 ComponentToTypeMaster");
-
-            return strcmd.ToString();
-        }
-        #endregion
-
-        #region 構成工事種別関連マスタ検索（複数）
-        /// <summary>
-        /// 構成工事種別関連マスタ検索（複数）
-        /// </summary>
-        /// <param name="AddSQLString"></param>
-        /// <param name="data"></param>
-        /// <param name="bConnect"></param>
-        /// <returns></returns>
-        public bool SelectAction(string AddSQLString, ref List<ComponentToTypeMaster> data, bool bConnect = true)
-        {
-            // インターフェース
-            StringBuilder strcmd = new StringBuilder();
-            ArrayList arData = new ArrayList();
-
-            try
-            {
-                // SQL作成（DateTime型が変換できないのでCharに変換しておく）
-                strcmd.AppendFormat("{0}{1}", CreateSelectSQL(), AddSQLString);
-
-                // SQL実行
-                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
-
-                // データセット
-                foreach (object[] objwrk in arData)
-                {
-                    ComponentToTypeMaster work = new ComponentToTypeMaster();
-                    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>
-        /// <param name="AddSQLString"></param>
-        /// <param name="data"></param>
-        /// <param name="bConnect"></param>
-        /// <returns></returns>
-        public bool SelectAction(string AddSQLString, ref ComponentToTypeMaster data, bool bConnect = true)
-        {
-            // インターフェース
-            StringBuilder strcmd = new StringBuilder();
-            ArrayList arData = new ArrayList();
-
-            try
-            {
-                // SQL作成（DateTime型が変換できないのでCharに変換しておく）
-                strcmd.AppendFormat("{0}{1}", CreateSelectSQL(), AddSQLString);
-
-                // SQL実行
-                if (!ExecuteReader(strcmd.ToString(), ref arData, bConnect)) return false;
-                // データ無
-                if (arData.Count == 0) return false;
-
-                // データセット
-                foreach (object[] objwrk in arData)
-                {
-                    Reader2Struct(objwrk, ref data);
-                    break;
-                }
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
-                return false;
-            }
-
-        }
-        #endregion
-
-        #region 追加処理
-        /// <summary>
-        /// 構成工事種別関連マスタ追加
-        /// </summary>
-        /// <param name="data">構成工事種別関連マスタデータ</param>
-        /// <returns>true：成功 false：失敗</returns>
-        public bool InsertAction(ComponentToTypeMaster work, bool bConnect = true)
-        {
-            StringBuilder strcmd = new StringBuilder();
-            try
-            {
-                strcmd.Append("INSERT INTO ComponentToTypeMaster");
-
-                strcmd.Append(" VALUES (");
-
-                strcmd.AppendFormat("  {0}", work.ComponentCode.ToString());
-                strcmd.AppendFormat(", {0}", work.TypeCode.ToString());
-
-                strcmd.Append(", NOW()");
-                strcmd.Append(", NOW()");
-                strcmd.Append(")");
-
-                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
-                return false;
-            }
-        }
-        #endregion
-
-        #region 構成工事種別関連マスタ追加
-        /// <summary>
-        /// 構成工事種別関連マスタ追加
-        /// </summary>
-        /// <param name="data">構成工事種別関連マスタデータ</param>
-        /// <returns>true：成功 false：失敗</returns>
-        public bool InsertAction(List<ComponentToTypeMaster> data, bool bConnect = true)
-        {
-            StringBuilder strcmd = new StringBuilder();
-            try
-            {
-                foreach (ComponentToTypeMaster work in data)
-                {
-                    InsertAction(work, bConnect);
-                }
-                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, ComponentToTypeMaster data, bool bConnect = true)
-        {
-            StringBuilder strcmd = new StringBuilder();
-            try
-            {
-                strcmd.Append("UPDATE ComponentToTypeMaster");
-
-                strcmd.Append(" SET");
-
-                strcmd.AppendFormat(" ComponentCode = {0}", data.ComponentCode.ToString());
-                strcmd.AppendFormat(",ItemCode = {0}", data.TypeCode.ToString());
-
-                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 ComponentToTypeMaster", 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 ComponentToTypeMaster wrk)
-        {
-            try
-            {
-                // データ取得
-                wrk.ComponentCode = CommonMotions.cnvInt(objwrk[(int)NameColumn.ComponentCode].ToString());
-                wrk.TypeCode = CommonMotions.cnvInt(objwrk[(int)NameColumn.ItemCode].ToString());
-
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
-            }
-            catch (MySqlException myex)
-            {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-
-        #endregion
-
-        #region 検索の文字列作成
-        /// <summary>
-        /// 主キー検索の文字列を返す
-        /// </summary>
-        /// <param name="TypeCode">大工種キー</param>
-        /// <returns>Where文字列</returns>
-        public string CreatePrimarykeyString(int ComponentCode, int TypeCode=0)
-        {
-            StringBuilder strWork = new StringBuilder();
-            try
-            {
-                strWork.AppendFormat(" Where ComponentCode = {0}", ComponentCode);
-                if (TypeCode != 0)
-                    strWork.AppendFormat(" And TypeCode = {0}", TypeCode);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
-            }
-
-            return strWork.ToString();
-        }
-        #endregion
-    }
-}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBudgetSumCode.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBudgetSumCode.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBudgetSumCode.cs	(revision 352)
@@ -0,0 +1,448 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 予算書集計コードマスタＤＢアクセス
+    /// </summary>
+    public class IOMBudgetSumCode : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 予算書集計コードマスタフィールド並び
+        /// </summary>
+        public enum TableColumn
+        {
+            BlockCode,              // ブロック番号
+            GroupCode,              // グループ番号
+            ComponentCode,          // 構成キー
+            ItemCode,               // 工種キー
+            ElementsName,           // 構成名称
+
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMBudgetSumCode()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region SELECT　SQL作成
+        /// <summary>
+        /// SQL作成
+        /// </summary>
+        private string CreateSelectSQL()
+        {
+            StringBuilder strcmd = new StringBuilder();
+            strcmd.Append("SELECT");
+
+            bool bFirst = true;
+            foreach (var gender in Enum.GetValues(typeof(TableColumn)))
+            {
+                if (!bFirst) strcmd.Append(", ");
+                if (gender.ToString().Equals("EntryDate") || gender.ToString().Equals("UpdateDate"))
+                {
+                    strcmd.AppendFormat(" DATE_FORMAT({0}, '%Y/%m/%d %H:%i:%s')", gender.ToString());
+                }
+                else
+                {
+                    strcmd.AppendFormat(" {0}", gender.ToString());
+                }
+                bFirst = false;
+            }
+            strcmd.Append(" FROM BudgetSumCode");
+
+            return strcmd.ToString();
+        }
+        #endregion
+
+        #region 複数件読込み処理
+        /// <summary>
+        /// 複数件読込み処理
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">予算書集計コードマスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<BudgetSumCode> 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;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    BudgetSumCode work = new BudgetSumCode();
+                    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>
+        public bool SelectAction(string AddSQLString, ref BudgetSumCode 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 予算書集計コードマスタ追加
+        /// <summary>
+        /// 予算書集計コードマスタ追加
+        /// </summary>
+        /// <param name="data">予算書集計コードマスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(BudgetSumCode work, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO BudgetSumCode");
+                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.BlockCode);                // ブロック番号
+                strcmd.AppendFormat(", {0}", work.GroupCode);               // グループ番号
+                strcmd.AppendFormat(", {0}", work.ComponentCode);           // 構成キー
+                strcmd.AppendFormat(", {0}", work.ItemCode);                // 工種キー
+                strcmd.AppendFormat(",'{0}'", work.ElementsName);           // 構成名称
+
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate);
+                strcmd.AppendFormat(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate);
+                strcmd.Append(")");
+
+                if (!ExecuteNonQuery(strcmd.ToString(), bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd.ToString());
+                return false;
+            }
+        }
+        #endregion
+
+        #region 予算書集計コードマスタ追加
+        /// <summary>
+        /// 予算書集計コードマスタ追加
+        /// </summary>
+        /// <param name="data">予算書集計コードマスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<BudgetSumCode> data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                bool bColFirst = true;
+                strcmd.Append("INSERT INTO BudgetSumCode");
+                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 (BudgetSumCode work in data)
+                {
+                    if (bDataFirst) strcmd.Append(" (");
+                    else strcmd.Append(", (");
+
+                    strcmd.AppendFormat(" {0}", work.BlockCode);                // ブロック番号
+                    strcmd.AppendFormat(", {0}", work.GroupCode);               // グループ番号
+                    strcmd.AppendFormat(", {0}", work.ComponentCode);           // 構成キー
+                    strcmd.AppendFormat(", {0}", work.ItemCode);                // 工種キー
+                    strcmd.AppendFormat(",'{0}'", work.ElementsName);           // 構成名称
+
+                    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, BudgetSumCode data, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+
+                strcmd.Append("UPDATE BudgetSumCode");
+
+                strcmd.Append(" SET");
+
+                strcmd.AppendFormat(" BlockCode = {0}", data.BlockCode);            // ブロック番号
+                strcmd.AppendFormat(", GroupCode = {0}", data.GroupCode);           // グループ番号
+                strcmd.AppendFormat(", ComponentCode = {0}", data.ComponentCode);   // 構成キー
+                strcmd.AppendFormat(", ItemCode = {0}", data.ItemCode);             // 工種キー
+                strcmd.AppendFormat(", ElementsName = '{0}'", data.ElementsName);   // 構成名称
+
+                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 BudgetSumCode", 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 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            StringBuilder strcmd = new StringBuilder();
+            try
+            {
+                strcmd.Append("UPDATE BudgetSumCode");
+
+                strcmd.Append(" SET");
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.BlockCode:                   // ブロック番号
+                        strcmd.AppendFormat(" BlockCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.GroupCode:                   // グループ番号
+                        strcmd.AppendFormat(" GroupCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:                // 構成キー
+                        strcmd.AppendFormat(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemCode:                     // 工種キー
+                        strcmd.AppendFormat(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ElementsName:                // 構成名称
+                        strcmd.AppendFormat(" ElementsName = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd.Append(", UpdateDate = NOW()");
+                strcmd.Append(CreatePrimarykeyString(ConstructionCode));
+
+                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 MySQLDataReaderより構造体へセットする
+        /// <summary>
+        /// MySQLDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">MySQLDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref BudgetSumCode wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.BlockCode = int.Parse(objwrk[(int)TableColumn.BlockCode].ToString());               // ブロック番号
+                wrk.GroupCode = int.Parse(objwrk[(int)TableColumn.GroupCode].ToString());               // グループ番号
+                wrk.ComponentCode = int.Parse(objwrk[(int)TableColumn.ComponentCode].ToString());       // 構成キー
+                wrk.ItemCode = int.Parse(objwrk[(int)TableColumn.ItemCode].ToString());                 // 工種キー
+                wrk.ElementsName = objwrk[(int)TableColumn.ElementsName].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 BlockCode, int GroupCode = -1, int ComponentCode = -1, int ItemCode = -1)
+        {
+            StringBuilder strWork = new StringBuilder();
+            try
+            {
+                strWork.AppendFormat(" Where BlockCode = {0}", BlockCode);
+                if (GroupCode > -1)
+                    strWork.AppendFormat(" And GroupCode = {0}", GroupCode);
+                if (ComponentCode > -1)
+                    strWork.AppendFormat(" And ComponentCode = {0}", ComponentCode);
+                if (ItemCode > -1)
+                    strWork.AppendFormat(" And ItemCode = {0}", ItemCode);
+
+                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="DataRec"></param>
+        public void RecClear(ref BudgetSumCode DataRec)
+        {
+            DataRec.BlockCode = 0;                  // ブロック番号
+            DataRec.GroupCode = 0;                  // グループ番号
+            DataRec.ComponentCode = 0;              // 構成キー
+            DataRec.ItemCode = 0;                   // 工種キー
+            DataRec.ElementsName = string.Empty;    // 構成名称
+            DataRec.EntryDate = DateTime.Now;       // 登録日付
+            DataRec.UpdateDate = DateTime.Now;      // 更新日付
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs	(revision 352)
@@ -37,6 +37,7 @@
             DisplayOrder,
             NameString,
             PublicFlg,
+            RepairFlg,
             SecRank,
             ExpensesLink,
             DeleteFlg,
@@ -57,29 +58,29 @@
 
         #endregion
 
-        #region 検索処理
+        #region SELECT　SQL作成
         /// <summary>
-        /// 名称マスタ検索
+        /// SQL作成
         /// </summary>
-        /// <param name="AddSQLString">検索条件SQL文字列</param>
-        /// <param name="data">名称マスタデータ</param>
-        /// <returns>true：成功 false：失敗</returns>
         private string CreateSelectSQL()
         {
             StringBuilder strcmd = new StringBuilder();
-
             strcmd.Append("SELECT");
-            strcmd.Append(" TypeCode");
-            strcmd.Append(",DisplayOrder");
-            strcmd.Append(",NameString");
-            strcmd.Append(",PublicFlg");
-            strcmd.Append(",SecRank");
-            strcmd.Append(",ExpensesLink");
 
-            strcmd.Append(",DeleteFlg");
-
-            strcmd.Append(", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')");
-            strcmd.Append(", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')");
+            bool bFirst = true;
+            foreach (var gender in Enum.GetValues(typeof(NameColumn)))
+            {
+                if (!bFirst) strcmd.Append(", ");
+                if (gender.ToString().Equals("EntryDate") || gender.ToString().Equals("UpdateDate"))
+                {
+                    strcmd.AppendFormat(" DATE_FORMAT({0}, '%Y/%m/%d %H:%i:%s')", gender.ToString());
+                }
+                else
+                {
+                    strcmd.AppendFormat(" {0}", gender.ToString());
+                }
+                bFirst = false;
+            }
             strcmd.Append(" FROM ConstructionTypeMaster");
 
             return strcmd.ToString();
@@ -196,6 +197,7 @@
                 strcmd.AppendFormat(", {0}", work.DisplayOrder);
                 strcmd.AppendFormat(",'{0}'", work.NameString);
                 strcmd.AppendFormat(", {0}", work.PublicFlg);
+                strcmd.AppendFormat(", {0}", work.RepairFlg);
                 strcmd.AppendFormat(", {0}", work.SecRank);
                 strcmd.AppendFormat(", {0}", work.ExpensesLink);
                 strcmd.AppendFormat(", {0}", work.DeleteFlg);
@@ -249,6 +251,7 @@
                     strcmd.AppendFormat(", {0}", work.DisplayOrder);
                     strcmd.AppendFormat(",'{0}'", work.NameString);
                     strcmd.AppendFormat(", {0}", work.PublicFlg);
+                    strcmd.AppendFormat(", {0}", work.RepairFlg);
                     strcmd.AppendFormat(", {0}", work.SecRank);
                     strcmd.AppendFormat(", {0}", work.ExpensesLink);
                     strcmd.AppendFormat(", {0}", work.DeleteFlg);
@@ -290,12 +293,13 @@
                 strcmd.Append(" SET");
 
                 strcmd.AppendFormat(" TypeCode = {0}", data.TypeCode);
-                strcmd.AppendFormat(",DisplayOrder = {0}", data.DisplayOrder);
-                strcmd.AppendFormat(",NameString = '{0}'", data.NameString);
-                strcmd.AppendFormat(",PublicFlg = {0}", data.PublicFlg);
-                strcmd.AppendFormat(",SecRank = {0}", data.SecRank);
-                strcmd.AppendFormat(",ExpensesLink = {0}", data.ExpensesLink);
-                strcmd.AppendFormat(",DeleteFlg = {0}", data.DeleteFlg);
+                strcmd.AppendFormat(", DisplayOrder = {0}", data.DisplayOrder);
+                strcmd.AppendFormat(", NameString = '{0}'", data.NameString);
+                strcmd.AppendFormat(", PublicFlg = {0}", data.PublicFlg);
+                strcmd.AppendFormat(", RepairFlg = {0}", data.RepairFlg);
+                strcmd.AppendFormat(", SecRank = {0}", data.SecRank);
+                strcmd.AppendFormat(", ExpensesLink = {0}", data.ExpensesLink);
+                strcmd.AppendFormat(", DeleteFlg = {0}", data.DeleteFlg);
 
                 strcmd.Append(", UpdateDate = NOW()");
                 strcmd.Append(AddSQLString);
@@ -389,6 +393,7 @@
                 wrk.DisplayOrder = int.Parse(objwrk[(int)NameColumn.DisplayOrder].ToString());
                 wrk.NameString = objwrk[(int)NameColumn.NameString].ToString();
                 wrk.PublicFlg = int.Parse(objwrk[(int)NameColumn.PublicFlg].ToString());
+                wrk.RepairFlg = int.Parse(objwrk[(int)NameColumn.RepairFlg].ToString());
                 wrk.SecRank = int.Parse(objwrk[(int)NameColumn.SecRank].ToString());
                 wrk.ExpensesLink = int.Parse(objwrk[(int)NameColumn.ExpensesLink].ToString());
 
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ComponentToTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ComponentToTypeMaster.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ComponentToTypeMaster.cs	(nonexistent)
@@ -1,58 +0,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace ProcessManagement.DataModel
-{
-    /// <summary>
-    /// 大項目・工事種別リンクマスタ
-    /// </summary>
-    public class ComponentToTypeMaster
-    {
-        #region メンバ変数
-        private int         m_ComponentCode = 0;	            // 構成キー
-        private int         m_TypeCode = 0;	                    // 工事種別コード
-        private DateTime    m_EntryDate = DateTime.Now;         // 登録日付
-        private DateTime    m_UpdateDate = DateTime.Now;        // 更新日付
-        #endregion
-
-        #region コンストラクタ
-        #endregion
-
-        #region プロパティ
-        /// <summary>
-        /// 構成キー
-        /// </summary>
-        public int ComponentCode
-        {
-            get { return m_ComponentCode; }
-            set { m_ComponentCode = value; }
-        }
-        /// <summary>
-        /// 工事種別コード
-        /// </summary>
-        public int TypeCode
-        {
-            get { return m_TypeCode; }
-            set { m_TypeCode = 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/BudgetSumCode.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/BudgetSumCode.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/BudgetSumCode.cs	(revision 352)
@@ -0,0 +1,102 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 積算予算書明細データ
+    /// </summary>
+    public class BudgetSumCode
+    {
+        #region メンバ変数
+
+        private int     m_BlockCode = 0;                    // ブロック番号
+        private int     m_GroupCode = 0;                    // グループ番号
+        private int     m_ComponentCode = 0;                // 構成キー
+        private int     m_ItemCode = 0;                     // 工種キー
+        private string  m_ElementsName = string.Empty;      // 要素名称
+
+        private DateTime m_EntryDate = DateTime.Now;        // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;       // 更新日付
+        #endregion
+
+        #region 定数
+        public enum RepairFlgDef
+        {
+            /// <summary>
+            /// 新築
+            /// </summary>
+            NewBuild = 0,
+            /// <summary>
+            /// 改築
+            /// </summary>
+            Repair,
+        }
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// ブロック番号
+        /// </summary>
+        public int BlockCode
+        {
+            get { return m_BlockCode; }
+            set { m_BlockCode = value; }
+        }
+        /// <summary>
+        /// グループ番号
+        /// </summary>
+        public int GroupCode
+        {
+            get { return m_GroupCode; }
+            set { m_GroupCode = value; }
+        }
+        /// <summary>
+        /// 構成キー
+        /// </summary>
+        public int ComponentCode
+        {
+            get { return m_ComponentCode; }
+            set { m_ComponentCode = value; }
+        }
+        /// <summary>
+        /// 工種キー
+        /// </summary>
+        public int ItemCode
+        {
+            get { return m_ItemCode; }
+            set { m_ItemCode = value; }
+        }
+        /// <summary>
+        /// 要素名称
+        /// </summary>
+        public string ElementsName
+        {
+            get { return m_ElementsName; }
+            set { m_ElementsName = 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/ConstructionTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionTypeMaster.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionTypeMaster.cs	(revision 352)
@@ -11,11 +11,11 @@
     public class ConstructionTypeMaster
     {
         #region 定数
-        #region 工事種別マスタ：公共工事種別
+        #region 公共工事種別
         /// <summary>
-        /// 工事種別マスタ：公共工事種別
+        /// 公共工事種別
         /// </summary>
-        public enum ConstructionTypeDef
+        public enum PublicFlgDef
         {
             /// <summary>
             /// 0:その他
@@ -31,14 +31,36 @@
             Popular,
         }
         #endregion
+
+        #region 新築・改修区分
+        /// <summary>
+        /// 新築・改修区分
+        /// </summary>
+        public enum RepairFlgDef
+        {
+            /// <summary>
+            /// 省略時
+            /// </summary>
+            Default = 0,
+            /// <summary>
+            /// 新築
+            /// </summary>
+            Create,
+            /// <summary>
+            /// 改修
+            /// </summary>
+            Modify,
+        }
         #endregion
+        #endregion
 
         #region メンバ変数
         private int         m_TypeCode = 0;	                    // 工事種別コード
         private int         m_DisplayOrder = 0;	                // 表示順
         private string      m_NameString = string.Empty;	    // 表示名称
+        private int         m_PublicFlg = 0;                    // 公共工事フラグ
+        private int         m_RepairFlg = 0;                    // 新築・改修フラグ
         private int         m_SecRank = 0;                      // 保護区分ランク
-        private int         m_PublicFlg = 0;                    // 公共工事フラグ
         private int         m_ExpensesLink = 0;                 // 経費使用区分
 
         private int         m_DeleteFlg = 0;	                // 削除フラグ
@@ -75,6 +97,22 @@
             set { m_NameString = value; }
         }
         /// <summary>
+        /// 公共工事フラグ
+        /// </summary>
+        public int PublicFlg
+        {
+            get { return m_PublicFlg; }
+            set { m_PublicFlg = value; }
+        }
+        /// <summary>
+        /// 新築・改修フラグ
+        /// </summary>
+        public int RepairFlg
+        {
+            get { return m_RepairFlg; }
+            set { m_RepairFlg = value; }
+        }
+        /// <summary>
         /// 保護区分ランク
         /// </summary>
         public int SecRank
@@ -83,14 +121,6 @@
             set { m_SecRank = value; }
         }
         /// <summary>
-        /// 公共工事フラグ
-        /// </summary>
-        public int PublicFlg
-        {
-            get { return m_PublicFlg; }
-            set { m_PublicFlg = value; }
-        }
-        /// <summary>
         /// 経費使用区分
         /// </summary>
         public int ExpensesLink
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 352)
@@ -799,13 +799,13 @@
 
                 strSQL.Append(" AND A.ConstructionPersonCode != 0");
 
-                strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 strSQL.Append(" And (A.ConstructionCode IN (SELECT AA1.CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL AA1");
                 strSQL.Append(" WHERE AA1.COMPANYCODE != 0 AND AA1.COMPANYCODE != -1");
                 strSQL.Append(" GROUP BY AA1.CONSTRUCTIONCODE, AA1.COMPANYCODE");
                 strSQL.AppendFormat(" HAVING SUM(AA1.EXECUTIONAMOUNT) >= {0})))", CommonDefine.s_PrintOutPrice);
 
-                strSQL.AppendFormat(" OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat(" OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 strSQL.Append(" And (A.ConstructionCode IN (SELECT AA1.CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL AA1");
                 strSQL.Append(" WHERE AA1.COMPANYCODE != 0 AND AA1.COMPANYCODE != -1");
                 strSQL.Append(" GROUP BY AA1.CONSTRUCTIONCODE, AA1.COMPANYCODE");
@@ -1106,9 +1106,9 @@
                 strSQL.AppendFormat("  And (A1.PurchaseOrderFlg > {0}", (int)ConstructionLedgerDetail.PurOrderFlgDef.ChangeOld);
                 strSQL.AppendFormat("  And A1.PurchaseOrderFlg <> {0})", (int)ConstructionLedgerDetail.PurOrderFlgDef.NotMakingData);
 
-                strSQL.AppendFormat("  And ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat("  And ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 strSQL.AppendFormat("    And A1.EXECUTIONAMOUNT >= {0})", CommonDefine.s_PrintOutPrice);
-                strSQL.AppendFormat("    OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat("    OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 strSQL.AppendFormat("    And A1.EXECUTIONAMOUNT >= {0}))", CommonDefine.s_PrintOutPricePublic);
 
                 strSQL.Append(" Order By");
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs	(revision 352)
@@ -454,6 +454,11 @@
         private bool m_ParentEnd = false;
         // *-----* ���ʏ����ݒ� *-----*
 
+        /// <summary>
+        /// �H����p��`�N���X
+        /// </summary>
+        private ClsCommonCosts m_CommonCosts = new ClsCommonCosts();
+
         #region �t�H�[����
         /// <summary>
         /// �t�H�[����
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 352)
@@ -43,23 +43,12 @@
                 }
 
                 // 経営者は経費の変更ができる
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
                 {
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        btnChangeExpenses.Visible = true;
-                    }
+                    btnChangeExpenses.Visible = true;
                 }
-                else
-                {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
-                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
-                    {
-                        btnChangeExpenses.Visible = true;
-                    }
-                }
             }
             catch (Exception ex)
             {
@@ -558,17 +547,8 @@
                 }
 
                 bool bDspEnable = true;
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                    if (CommonMotions.LoginUserData.SecurityManagement == User) bDspEnable = false;
-                }
-                else
-                {
-                    int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
-                    if (CommonMotions.LoginUserSecurity.SecRank == User) bDspEnable = false;
-                }
+                int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
+                if (CommonMotions.LoginUserSecurity.SecRank == User) bDspEnable = false;
                 // 一般ユーザーは人件費を変更できない
                 pnlGroup1.Enabled = bDspEnable;
                 pnlGroup2.Enabled = bDspEnable;
@@ -876,7 +856,7 @@
                 DataGridView dgv = dgvAllDisplay;
                 // 行追加
                 int rowcnt = dgv.Rows.Add(1);
-                
+
                 // カレント行取得
                 DataGridViewRow CurRow = dgv.Rows[rowcnt];
 
@@ -902,19 +882,10 @@
                 CurRow.Cells[(int)GridColumn.HopePrice].ReadOnly = false;
                 CurRow.Cells[(int)GridColumn.ExecPrice].ReadOnly = false;
 
-                // 新セキュリティデータ対応済みかを確認する
                 bool bReadOnly = false;
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                    if (CommonMotions.LoginUserData.SecurityManagement == User) bReadOnly = true;
-                }
-                else
-                {
-                    int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
-                    if (CommonMotions.LoginUserSecurity.SecRank == User) bReadOnly = true;
-                }
-                
+                int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
+                if (CommonMotions.LoginUserSecurity.SecRank == User) bReadOnly = true;
+
                 // 工事担当者は希望金額のみ入力が可能
                 CurRow.Cells[(int)GridColumn.ExecPrice].ReadOnly = bReadOnly;
 
@@ -1898,8 +1869,8 @@
                 List<EstimateBudgetDetail> DetailList = new List<EstimateBudgetDetail>();
                 string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
                 strSQL += string.Format(" AND GROUPCOUNT IN ({0}, {1})"
-                                        , (int)GroupName_EstimateBudget.CommonTempCalcCosts
-                                        , (int)GroupName_EstimateBudget.CommonPileUp);
+                                        , (int)FrmEstimateBudget.GroupName.CommonTempCalcCosts
+                                        , (int)FrmEstimateBudget.GroupName.CommonPileUp);
                 strSQL += " ORDER BY GROUPCOUNT, LINECOUNT";
                 if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
 
@@ -1957,14 +1928,16 @@
                 CreateTitleRow((int)FrmConstructionBudget.DataGroup.CommonTempCosts, s_GroupTitle[(int)FrmConstructionBudget.DataGroup.CommonTempCosts]);
 
                 // データ読込
-                string strSQL = string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL += string.Format(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_CommunityCompCode);    // 共通仮設費を対象にする
-                strSQL += string.Format(" AND CompanyCode = {0}",
-                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);       // 自社施工を取得する
-                strSQL += " ORDER BY PageCount, LineCount";                                                 // 見積書と同じような並びにする
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.AppendFormat(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                //strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsComCostsStatic.s_CommunityCompCode); // 共通仮設費を対象にする
+                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", m_CommonCosts.CommonTemporyPublic);       // 共通仮設費を対象にする
+                strSQL.AppendFormat(" AND CompanyCode = {0}",
+                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);   // 自社施工を取得する
+                strSQL.Append(" ORDER BY PageCount, LineCount");                                        // 見積書と同じような並びにする
 
                 List<EstimateDataDetail> DetailList = new List<EstimateDataDetail>();
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
+                if (!DetailDB.SelectAction(strSQL.ToString(), ref DetailList)) return false;
 
                 int icnt = 1;
                 foreach (EstimateDataDetail DetailRec in DetailList)
@@ -2046,7 +2019,7 @@
                 strSQL += ", B.COMPANYNAME FROM ESTIMATEBUDGETDETAIL A";
                 strSQL += " LEFT JOIN SUBCONTRACTORMASTER B ON B.COMPANYCODE = A.COMPANYCODE";
                 strSQL += string.Format(" Where A.ConstructionCode = {0}", m_ConstructionCode);
-                strSQL += string.Format(" AND A.GROUPCOUNT = {0} ", (int)GroupName_EstimateBudget.OutSource);
+                strSQL += string.Format(" AND A.GROUPCOUNT = {0} ", (int)FrmEstimateBudget.GroupName.OutSource);
 
                 if (!DetailDB.ExecuteReader(strSQL, ref ArList)) return false;
 
@@ -2286,7 +2259,7 @@
                 // データ読込
                 List<EstimateBudgetDetail> DetailList = new List<EstimateBudgetDetail>();
                 string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0} ", (int)GroupName_EstimateBudget.MyConstruction);
+                strSQL += string.Format(" AND GROUPCOUNT = {0} ", (int)FrmEstimateBudget.GroupName.MyConstruction);
 
                 if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
 
@@ -2347,19 +2320,21 @@
                 m_CostsRowCount[(int)CostsRowLine.MyConstructionLine] = dgvAllDisplay.RowCount - 1;
 
                 // データ読込
-                string strSQL = "SELECT B.COMPONENTNAME, A.ITEMNAME, SUM(A.LINETOTAL), A.COMPONENTCODE, A.ITEMCODE, A.SPECNAME";
-                strSQL += " FROM ESTIMATEDATADETAIL A, COMPONENTMASTER B";
-                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);                 // 対象工事のみ
-                strSQL += string.Format(" AND A.COMPONENTCODE != {0}", ClsCommonCosts.s_CommunityCompCode);     // 共通仮設費以外を対象にする
-                strSQL += " And A.MYEXPENSESFLG = 0";                                                           // 経費を除外する
-                strSQL += string.Format(" And A.COMPANYCODE = {0}",
-                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);           // 自社施工を除外する
-                strSQL += " And A.COMPONENTCODE = B.COMPONENTCODE";
-                strSQL += " GROUP BY B.COMPONENTNAME, A.COMPONENTCODE, A.ITEMNAME, A.ITEMCODE, A.SPECNAME, A.PageCount, A.LineCount";
-                strSQL += " ORDER BY A.COMPONENTCODE, A.ITEMCODE, A.PAGECOUNT, A.LINECOUNT";
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("SELECT B.COMPONENTNAME, A.ITEMNAME, SUM(A.LINETOTAL), A.COMPONENTCODE, A.ITEMCODE, A.SPECNAME");
+                strSQL.Append(" FROM ESTIMATEDATADETAIL A, COMPONENTMASTER B");
+                strSQL.AppendFormat(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);                 // 対象工事のみ
+                //strSQL.AppendFormat(" AND A.COMPONENTCODE != {0}", ClsComCostsStatic.s_CommunityCompCode);     // 共通仮設費以外を対象にする
+                strSQL.AppendFormat(" AND A.COMPONENTCODE != {0}", m_CommonCosts.CommonTemporyPublic);        // 共通仮設費以外を対象にする
+                strSQL.Append(" And A.MYEXPENSESFLG = 0");                                                  // 経費を除外する
+                strSQL.AppendFormat(" And A.COMPANYCODE = {0}",
+                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);       // 自社施工を除外する
+                strSQL.Append(" And A.COMPONENTCODE = B.COMPONENTCODE");
+                strSQL.Append(" GROUP BY B.COMPONENTNAME, A.COMPONENTCODE, A.ITEMNAME, A.ITEMCODE, A.SPECNAME, A.PageCount, A.LineCount");
+                strSQL.Append(" ORDER BY A.COMPONENTCODE, A.ITEMCODE, A.PAGECOUNT, A.LINECOUNT");
 
                 ArrayList arList = new ArrayList();
-                if (!DetailDB.ExecuteReader(strSQL, ref arList)) return false;
+                if (!DetailDB.ExecuteReader(strSQL.ToString(), ref arList)) return false;
 
                 int icnt = 1;
                 foreach (object[] wrkrec in arList)
@@ -2414,7 +2389,8 @@
             IOEstimateBudgetDetail BudgteDB = new IOEstimateBudgetDetail();
             try
             {
-                int CompomentCode = ClsCommonCosts.s_MaterialDisposal;
+                //int CompomentCode = ClsComCostsStatic.s_MaterialDisposal;
+                int CompomentCode = m_CommonCosts.MaterialDisposalPublic;
                 string ComponentName = "発生材処分費";
                 double EstimatePrice = 0;
                 double NegoPrice = 0;
@@ -2422,7 +2398,7 @@
                 string strSQL = "SELECT COMPONENTCODE ,FIRSTSTRING, SECONDSTRING, ESTIMATEPRICE, NEGOTIATIONPRICE";
                 strSQL += " FROM ESTIMATEBUDGETDETAIL";
                 strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL += string.Format(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_MaterialDisposal);
+                strSQL += string.Format(" AND COMPONENTCODE = {0}", CompomentCode);
 
                 ArrayList arList = new ArrayList();
                 if (!BudgteDB.ExecuteReader(strSQL, ref arList)) return false;
@@ -2480,7 +2456,8 @@
             IOEstimateData esDB = new IOEstimateData();
             try
             {
-                int CompomentCode = ClsCommonCosts.s_MaterialDisposal;
+                //int CompomentCode = ClsComCostsStatic.s_MaterialDisposal;
+                int CompomentCode = m_CommonCosts.MaterialDisposalPublic;
                 string ComponentName = "発生材処分費";
                 double EstimatePrice = 0;
 
@@ -2487,7 +2464,7 @@
                 string strSQL = "SELECT COMPONENTCODE, ITEMNAME, SPECNAME, PRICEVALUE, FIXEDITEMCODE";
                 strSQL += " FROM ESTIMATEDATA";
                 strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL += string.Format(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_MaterialDisposal);
+                strSQL += string.Format(" AND COMPONENTCODE = {0}", CompomentCode);
                 strSQL += " ORDER BY COMPONENTCODE";
 
                 ArrayList arList = new ArrayList();
@@ -2579,7 +2556,7 @@
                 CreateTitleRow((int)FrmConstructionBudget.DataGroup.PurchaseCosts, s_GroupTitle[(int)FrmConstructionBudget.DataGroup.PurchaseCosts]);
 
                 string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)GroupName_EstimateBudget.PurchasePrice);
+                strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmEstimateBudget.GroupName.PurchasePrice);
                 EstimateBudgetDetail DetailRec = new EstimateBudgetDetail();
                 if (!DetailDB.SelectAction(strSQL, ref DetailRec)) return;
 
@@ -3606,20 +3583,12 @@
 
                 // 新セキュリティデータ対応済みかを確認する
                 bool bReadOnly = false;
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                    if (CommonMotions.LoginUserData.SecurityManagement == User) bReadOnly = true;
-                }
-                else
-                {
-                    int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
-                    if (CommonMotions.LoginUserSecurity.SecRank == User) bReadOnly = true;
-                }
+                int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
+                if (CommonMotions.LoginUserSecurity.SecRank == User) bReadOnly = true;
 
                 // 工事担当者は希望金額のみ入力が可能
                 SetData.Cells[(int)GridColumn.ExecPrice].ReadOnly = bReadOnly;
-                
+
                 // 自分より下の集計行を加算する
                 for (int i = GroupLineNo + 1; i < m_CostsRowCount.Length; i++)
                 {
@@ -4679,90 +4648,39 @@
             try
             {
                 bool bPermit = false;
-                
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        // システム管理者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // 最高機密管理者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                    {
-                        // 統括責任者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                    {
 
-                        // 上長は工事が自部署の関連だけ
-                        List<int> PersonList = new List<int>();
-                        PersonList.Add(m_ConstructionBaseInfo.SalesPersonCode);
-                        PersonList.Add(m_ConstructionBaseInfo.ConstructionPersonCode);
-                        if (m_ConstructionBaseInfo.ConstrSubPersonCode != 0) PersonList.Add(m_ConstructionBaseInfo.ConstrSubPersonCode);
-                        if (m_ConstructionBaseInfo.ConstructionInstructor != 0) PersonList.Add(m_ConstructionBaseInfo.ConstructionInstructor);
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
+                int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
+                int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者アクセス
 
-                        foreach (int Personcode in PersonList)
-                        {
-                            string strSQL = PersonDB.CreatePrimarykeyString(Personcode);
-                            PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                            if (!PersonDB.SelectAction(strSQL, ref PersonRec)) continue;
-
-                            // 所属上長では無ければfalse
-                            if (PersonRec.DepartmentCode == CommonMotions.LoginUserData.DepartmentCode)
-                            {
-                                bPermit = true;
-                                break;
-                            }
-                        }
-
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                    {
-                        // 一般ユーザー
-                        bPermit = false;
-                    }
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)                               // システム管理者
+                {
+                    // ===== 全データ対象の場合はOK
+                    bPermit = true;
                 }
-                else
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)       // 経営者アクセス
                 {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
-                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
-                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
-                    int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者アクセス
+                    // ===== 全データ対象の場合はOK
+                    bPermit = true;
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)       // 統括者アクセス
+                {
+                    // ===== 統括者アクセス対象の条件を調べる
+                    bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)       // 所属長アクセス
+                {
+                    // ===== 所属長アクセス対象の条件を調べる
+                    bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[NRank].Key)       // 一般者アクセス
+                {
+                    // ===== 一般者アクセス対象の条件を調べる
+                    // 一般ユーザー
+                    bPermit = false;
+                }
 
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)                               // システム管理者
-                    {
-                        // ===== 全データ対象の場合はOK
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)       // 経営者アクセス
-                    {
-                        // ===== 全データ対象の場合はOK
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)       // 統括者アクセス
-                    {
-                        // ===== 統括者アクセス対象の条件を調べる
-                        bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)       // 所属長アクセス
-                    {
-                        // ===== 所属長アクセス対象の条件を調べる
-                        bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[NRank].Key)       // 一般者アクセス
-                    {
-                        // ===== 一般者アクセス対象の条件を調べる
-                        // 一般ユーザー
-                        bPermit = false;
-                    }
-                }
                 return bPermit;
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 352)
@@ -646,6 +646,11 @@
         /// </summary>
         private bool m_RollBackJoinLedger = false;
 
+        /// <summary>
+        /// �H����p��`�N���X
+        /// </summary>
+        private ClsCommonCosts m_CommonCosts = new ClsCommonCosts();
+
         #region // *-----* �����܂Ƃߏ����A�g *-----*����
 
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 352)
@@ -30,13 +30,13 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.btnDataEntry = new System.Windows.Forms.Button();
@@ -87,7 +87,19 @@
             this.btnLineDel = new System.Windows.Forms.Button();
             this.btnLineAdd = new System.Windows.Forms.Button();
             this.panel2 = new System.Windows.Forms.Panel();
+            this.lblCellTotal = new System.Windows.Forms.Label();
+            this.btnDispDown = new System.Windows.Forms.Button();
+            this.btnDispUp = new System.Windows.Forms.Button();
+            this.btnOtherProc = new System.Windows.Forms.Button();
+            this.button1 = new System.Windows.Forms.Button();
+            this.button2 = new System.Windows.Forms.Button();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.btnCreate = new System.Windows.Forms.Button();
             this.dgvAllDisplay = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.grpExample1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.lblReqSumType03 = new System.Windows.Forms.Label();
+            this.lblReqSumType01 = new System.Windows.Forms.Label();
+            this.lblReqSumType02 = new System.Windows.Forms.Label();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column27 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -116,18 +128,6 @@
             this.Column25 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column26 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column28 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.lblCellTotal = new System.Windows.Forms.Label();
-            this.btnDispDown = new System.Windows.Forms.Button();
-            this.btnDispUp = new System.Windows.Forms.Button();
-            this.btnOtherProc = new System.Windows.Forms.Button();
-            this.button1 = new System.Windows.Forms.Button();
-            this.button2 = new System.Windows.Forms.Button();
-            this.btnSelect = new System.Windows.Forms.Button();
-            this.btnCreate = new System.Windows.Forms.Button();
-            this.grpExample1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
-            this.lblReqSumType03 = new System.Windows.Forms.Label();
-            this.lblReqSumType01 = new System.Windows.Forms.Label();
-            this.lblReqSumType02 = new System.Windows.Forms.Label();
             this.panel1.SuspendLayout();
             this.pnlGroup2.SuspendLayout();
             this.pnlGroup1.SuspendLayout();
@@ -779,11 +779,117 @@
             this.panel2.Size = new System.Drawing.Size(1290, 450);
             this.panel2.TabIndex = 36;
             // 
+            // 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.WhiteSmoke;
+            this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9.75F, System.Drawing.FontStyle.Bold);
+            this.lblCellTotal.ForeColor = System.Drawing.Color.Black;
+            this.lblCellTotal.Location = new System.Drawing.Point(100, 430);
+            this.lblCellTotal.Name = "lblCellTotal";
+            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
+            this.lblCellTotal.TabIndex = 36;
+            // 
+            // btnDispDown
+            // 
+            this.btnDispDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDispDown.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispDown.Location = new System.Drawing.Point(1300, 418);
+            this.btnDispDown.Name = "btnDispDown";
+            this.btnDispDown.Size = new System.Drawing.Size(40, 40);
+            this.btnDispDown.TabIndex = 42;
+            this.btnDispDown.TabStop = false;
+            this.btnDispDown.Text = "▼";
+            this.btnDispDown.UseVisualStyleBackColor = true;
+            this.btnDispDown.Visible = false;
+            this.btnDispDown.Click += new System.EventHandler(this.btnDispDown_Click);
+            // 
+            // btnDispUp
+            // 
+            this.btnDispUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDispUp.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispUp.Location = new System.Drawing.Point(1300, 354);
+            this.btnDispUp.Name = "btnDispUp";
+            this.btnDispUp.Size = new System.Drawing.Size(40, 40);
+            this.btnDispUp.TabIndex = 41;
+            this.btnDispUp.TabStop = false;
+            this.btnDispUp.Text = "▲";
+            this.btnDispUp.UseVisualStyleBackColor = true;
+            this.btnDispUp.Visible = false;
+            this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
+            // 
+            // btnOtherProc
+            // 
+            this.btnOtherProc.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnOtherProc.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnOtherProc.Location = new System.Drawing.Point(7, 656);
+            this.btnOtherProc.Name = "btnOtherProc";
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
+            this.btnOtherProc.TabIndex = 95;
+            this.btnOtherProc.TabStop = false;
+            this.btnOtherProc.Text = "他の画面へ";
+            this.btnOtherProc.UseVisualStyleBackColor = false;
+            this.btnOtherProc.Click += new System.EventHandler(this.btnOtherProc_Click);
+            // 
+            // button1
+            // 
+            this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button1.Location = new System.Drawing.Point(1300, 540);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(37, 35);
+            this.button1.TabIndex = 100;
+            this.button1.Text = "○";
+            this.button1.UseVisualStyleBackColor = true;
+            this.button1.Visible = false;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // button2
+            // 
+            this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button2.Location = new System.Drawing.Point(1300, 581);
+            this.button2.Name = "button2";
+            this.button2.Size = new System.Drawing.Size(37, 35);
+            this.button2.TabIndex = 101;
+            this.button2.Text = "１";
+            this.button2.UseVisualStyleBackColor = true;
+            this.button2.Visible = false;
+            this.button2.Click += new System.EventHandler(this.button2_Click);
+            // 
+            // btnSelect
+            // 
+            this.btnSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnSelect.BackColor = System.Drawing.Color.Green;
+            this.btnSelect.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnSelect.ForeColor = System.Drawing.Color.White;
+            this.btnSelect.Location = new System.Drawing.Point(546, 657);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 102;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Visible = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click);
+            // 
+            // btnCreate
+            // 
+            this.btnCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnCreate.BackColor = System.Drawing.Color.White;
+            this.btnCreate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCreate.ForeColor = System.Drawing.Color.Green;
+            this.btnCreate.Location = new System.Drawing.Point(420, 657);
+            this.btnCreate.Name = "btnCreate";
+            this.btnCreate.Size = new System.Drawing.Size(120, 30);
+            this.btnCreate.TabIndex = 103;
+            this.btnCreate.Text = "新　規";
+            this.btnCreate.UseVisualStyleBackColor = false;
+            this.btnCreate.Visible = false;
+            this.btnCreate.Click += new System.EventHandler(this.btnCreate_Click);
+            // 
             // dgvAllDisplay
             // 
             this.dgvAllDisplay.AllowUserToAddRows = false;
             this.dgvAllDisplay.AllowUserToDeleteRows = false;
-            this.dgvAllDisplay.AllowUserToResizeColumns = false;
             this.dgvAllDisplay.AllowUserToResizeRows = false;
             this.dgvAllDisplay.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
@@ -790,14 +896,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvAllDisplay.BackgroundColor = System.Drawing.Color.White;
             this.dgvAllDisplay.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvAllDisplay.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvAllDisplay.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -845,31 +951,81 @@
             this.dgvAllDisplay.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvAllDisplay_KeyDown);
             this.dgvAllDisplay.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvAllDisplay_MouseUp);
             // 
+            // grpExample1
+            // 
+            this.grpExample1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.grpExample1.BackColor = System.Drawing.Color.White;
+            this.grpExample1.BorderColor = System.Drawing.Color.Red;
+            this.grpExample1.Controls.Add(this.lblReqSumType03);
+            this.grpExample1.Controls.Add(this.lblReqSumType01);
+            this.grpExample1.Controls.Add(this.lblReqSumType02);
+            this.grpExample1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.grpExample1.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.grpExample1.Location = new System.Drawing.Point(183, 657);
+            this.grpExample1.Name = "grpExample1";
+            this.grpExample1.Size = new System.Drawing.Size(324, 28);
+            this.grpExample1.TabIndex = 104;
+            this.grpExample1.TabStop = false;
+            this.grpExample1.Visible = false;
+            // 
+            // lblReqSumType03
+            // 
+            this.lblReqSumType03.BackColor = System.Drawing.Color.LightGray;
+            this.lblReqSumType03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblReqSumType03.ForeColor = System.Drawing.Color.White;
+            this.lblReqSumType03.Location = new System.Drawing.Point(218, 4);
+            this.lblReqSumType03.Name = "lblReqSumType03";
+            this.lblReqSumType03.Size = new System.Drawing.Size(100, 20);
+            this.lblReqSumType03.TabIndex = 1;
+            this.lblReqSumType03.Text = "対 象 外";
+            this.lblReqSumType03.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblReqSumType01
+            // 
+            this.lblReqSumType01.BackColor = System.Drawing.Color.Yellow;
+            this.lblReqSumType01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblReqSumType01.ForeColor = System.Drawing.Color.Black;
+            this.lblReqSumType01.Location = new System.Drawing.Point(6, 4);
+            this.lblReqSumType01.Name = "lblReqSumType01";
+            this.lblReqSumType01.Size = new System.Drawing.Size(100, 20);
+            this.lblReqSumType01.TabIndex = 0;
+            this.lblReqSumType01.Text = "選択可能";
+            this.lblReqSumType01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblReqSumType02
+            // 
+            this.lblReqSumType02.BackColor = System.Drawing.Color.LightPink;
+            this.lblReqSumType02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblReqSumType02.ForeColor = System.Drawing.Color.Black;
+            this.lblReqSumType02.Location = new System.Drawing.Point(112, 4);
+            this.lblReqSumType02.Name = "lblReqSumType02";
+            this.lblReqSumType02.Size = new System.Drawing.Size(100, 20);
+            this.lblReqSumType02.TabIndex = 0;
+            this.lblReqSumType02.Text = "選 択 済";
+            this.lblReqSumType02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // Column1
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle9;
+            this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
             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 = 80;
             // 
             // Column3
             // 
-            this.Column3.Frozen = true;
             this.Column3.HeaderText = "固定フラグ";
             this.Column3.Name = "Column3";
             this.Column3.ReadOnly = true;
-            this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column3.Visible = false;
             // 
             // Column27
             // 
-            this.Column27.Frozen = true;
             this.Column27.HeaderText = "詳細台帳行番号";
             this.Column27.Name = "Column27";
             this.Column27.ReadOnly = true;
@@ -877,7 +1033,7 @@
             // 
             // Column2
             // 
-            this.Column2.Frozen = true;
+            this.Column2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.Column2.HeaderText = "グループ番号";
             this.Column2.Name = "Column2";
             this.Column2.ReadOnly = true;
@@ -887,7 +1043,7 @@
             // 
             // Column14
             // 
-            this.Column14.Frozen = true;
+            this.Column14.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.Column14.HeaderText = "構成キー";
             this.Column14.Name = "Column14";
             this.Column14.ReadOnly = true;
@@ -897,7 +1053,7 @@
             // 
             // Column15
             // 
-            this.Column15.Frozen = true;
+            this.Column15.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.Column15.HeaderText = "工種キー";
             this.Column15.Name = "Column15";
             this.Column15.ReadOnly = true;
@@ -907,31 +1063,29 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle10;
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle3;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "項　　　目";
             this.Column5.Name = "Column5";
             this.Column5.ReadOnly = true;
-            this.Column5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column5.Width = 180;
             // 
             // Column6
             // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle4;
             this.Column6.Frozen = true;
             this.Column6.HeaderText = "業　　　種";
             this.Column6.Name = "Column6";
             this.Column6.ReadOnly = true;
-            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column6.Width = 180;
             // 
             // Column18
             // 
-            this.Column18.Frozen = true;
+            this.Column18.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.Column18.HeaderText = "協力会社データタイプ";
             this.Column18.Name = "Column18";
             this.Column18.ReadOnly = true;
@@ -939,7 +1093,7 @@
             // 
             // Column4
             // 
-            this.Column4.Frozen = true;
+            this.Column4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.Column4.HeaderText = "協力会社コード";
             this.Column4.Name = "Column4";
             this.Column4.ReadOnly = true;
@@ -958,41 +1112,37 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle12.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
-            dataGridViewCellStyle12.Format = "N0";
-            dataGridViewCellStyle12.NullValue = null;
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            dataGridViewCellStyle5.Format = "N0";
+            dataGridViewCellStyle5.NullValue = null;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column7.Frozen = true;
             this.Column7.HeaderText = "予定（見積）金額";
             this.Column7.Name = "Column7";
             this.Column7.ReadOnly = true;
-            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column7.Width = 150;
             // 
             // Column12
             // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
-            this.Column12.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column12.Frozen = true;
             this.Column12.HeaderText = "実　行　金　額";
             this.Column12.Name = "Column12";
             this.Column12.ReadOnly = true;
-            this.Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column12.Width = 150;
             // 
             // Column9
             // 
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle14;
-            this.Column9.Frozen = true;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column9.HeaderText = "比率(％)";
             this.Column9.Name = "Column9";
             this.Column9.ReadOnly = true;
-            this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column9.Visible = false;
             this.Column9.Width = 5;
@@ -999,7 +1149,6 @@
             // 
             // Column13
             // 
-            this.Column13.Frozen = true;
             this.Column13.HeaderText = "タイトルフラグ";
             this.Column13.Name = "Column13";
             this.Column13.ReadOnly = true;
@@ -1009,7 +1158,6 @@
             // 
             // Column16
             // 
-            this.Column16.Frozen = true;
             this.Column16.HeaderText = "トータルフラグ";
             this.Column16.Name = "Column16";
             this.Column16.ReadOnly = true;
@@ -1019,7 +1167,6 @@
             // 
             // Column17
             // 
-            this.Column17.Frozen = true;
             this.Column17.HeaderText = "ブランクフラグ";
             this.Column17.Name = "Column17";
             this.Column17.ReadOnly = true;
@@ -1029,7 +1176,6 @@
             // 
             // Column8
             // 
-            this.Column8.Frozen = true;
             this.Column8.HeaderText = "独立フラグ";
             this.Column8.Name = "Column8";
             this.Column8.ReadOnly = true;
@@ -1039,7 +1185,6 @@
             // 
             // Column11
             // 
-            this.Column11.Frozen = true;
             this.Column11.HeaderText = "従属フラグ";
             this.Column11.Name = "Column11";
             this.Column11.ReadOnly = true;
@@ -1049,7 +1194,6 @@
             // 
             // Column19
             // 
-            this.Column19.Frozen = true;
             this.Column19.HeaderText = "増減フラグ";
             this.Column19.Name = "Column19";
             this.Column19.ReadOnly = true;
@@ -1057,7 +1201,6 @@
             // 
             // Column20
             // 
-            this.Column20.Frozen = true;
             this.Column20.HeaderText = "給与振分区分";
             this.Column20.Name = "Column20";
             this.Column20.ReadOnly = true;
@@ -1066,7 +1209,6 @@
             // 
             // Column21
             // 
-            this.Column21.Frozen = true;
             this.Column21.HeaderText = "給与振分日数";
             this.Column21.Name = "Column21";
             this.Column21.ReadOnly = true;
@@ -1075,7 +1217,6 @@
             // 
             // Column22
             // 
-            this.Column22.Frozen = true;
             this.Column22.HeaderText = "担当中フラグ";
             this.Column22.Name = "Column22";
             this.Column22.ReadOnly = true;
@@ -1084,11 +1225,9 @@
             // 
             // Column23
             // 
-            this.Column23.Frozen = true;
             this.Column23.HeaderText = "元工事番号";
             this.Column23.Name = "Column23";
             this.Column23.ReadOnly = true;
-            this.Column23.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column23.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column23.Visible = false;
             this.Column23.Width = 5;
@@ -1095,11 +1234,9 @@
             // 
             // Column24
             // 
-            this.Column24.Frozen = true;
             this.Column24.HeaderText = "工事名称タイトル";
             this.Column24.Name = "Column24";
             this.Column24.ReadOnly = true;
-            this.Column24.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column24.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column24.Visible = false;
             this.Column24.Width = 5;
@@ -1106,7 +1243,6 @@
             // 
             // Column25
             // 
-            this.Column25.Frozen = true;
             this.Column25.HeaderText = "担当者給与";
             this.Column25.Name = "Column25";
             this.Column25.ReadOnly = true;
@@ -1116,7 +1252,6 @@
             // 
             // Column26
             // 
-            this.Column26.Frozen = true;
             this.Column26.HeaderText = "注文書発行フラグ";
             this.Column26.Name = "Column26";
             this.Column26.ReadOnly = true;
@@ -1127,168 +1262,9 @@
             // 
             this.Column28.HeaderText = "明細番号";
             this.Column28.Name = "Column28";
+            this.Column28.ReadOnly = true;
             this.Column28.Visible = false;
             // 
-            // 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.WhiteSmoke;
-            this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.lblCellTotal.ForeColor = System.Drawing.Color.Black;
-            this.lblCellTotal.Location = new System.Drawing.Point(100, 430);
-            this.lblCellTotal.Name = "lblCellTotal";
-            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
-            this.lblCellTotal.TabIndex = 36;
-            // 
-            // btnDispDown
-            // 
-            this.btnDispDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDispDown.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispDown.Location = new System.Drawing.Point(1300, 418);
-            this.btnDispDown.Name = "btnDispDown";
-            this.btnDispDown.Size = new System.Drawing.Size(40, 40);
-            this.btnDispDown.TabIndex = 42;
-            this.btnDispDown.TabStop = false;
-            this.btnDispDown.Text = "▼";
-            this.btnDispDown.UseVisualStyleBackColor = true;
-            this.btnDispDown.Visible = false;
-            this.btnDispDown.Click += new System.EventHandler(this.btnDispDown_Click);
-            // 
-            // btnDispUp
-            // 
-            this.btnDispUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDispUp.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispUp.Location = new System.Drawing.Point(1300, 354);
-            this.btnDispUp.Name = "btnDispUp";
-            this.btnDispUp.Size = new System.Drawing.Size(40, 40);
-            this.btnDispUp.TabIndex = 41;
-            this.btnDispUp.TabStop = false;
-            this.btnDispUp.Text = "▲";
-            this.btnDispUp.UseVisualStyleBackColor = true;
-            this.btnDispUp.Visible = false;
-            this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
-            // 
-            // btnOtherProc
-            // 
-            this.btnOtherProc.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.btnOtherProc.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnOtherProc.Location = new System.Drawing.Point(7, 656);
-            this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
-            this.btnOtherProc.TabIndex = 95;
-            this.btnOtherProc.TabStop = false;
-            this.btnOtherProc.Text = "他の画面へ";
-            this.btnOtherProc.UseVisualStyleBackColor = false;
-            this.btnOtherProc.Click += new System.EventHandler(this.btnOtherProc_Click);
-            // 
-            // button1
-            // 
-            this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.button1.Location = new System.Drawing.Point(1300, 540);
-            this.button1.Name = "button1";
-            this.button1.Size = new System.Drawing.Size(37, 35);
-            this.button1.TabIndex = 100;
-            this.button1.Text = "○";
-            this.button1.UseVisualStyleBackColor = true;
-            this.button1.Visible = false;
-            this.button1.Click += new System.EventHandler(this.button1_Click);
-            // 
-            // button2
-            // 
-            this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.button2.Location = new System.Drawing.Point(1300, 581);
-            this.button2.Name = "button2";
-            this.button2.Size = new System.Drawing.Size(37, 35);
-            this.button2.TabIndex = 101;
-            this.button2.Text = "１";
-            this.button2.UseVisualStyleBackColor = true;
-            this.button2.Visible = false;
-            this.button2.Click += new System.EventHandler(this.button2_Click);
-            // 
-            // btnSelect
-            // 
-            this.btnSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnSelect.BackColor = System.Drawing.Color.Green;
-            this.btnSelect.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnSelect.ForeColor = System.Drawing.Color.White;
-            this.btnSelect.Location = new System.Drawing.Point(546, 657);
-            this.btnSelect.Name = "btnSelect";
-            this.btnSelect.Size = new System.Drawing.Size(120, 30);
-            this.btnSelect.TabIndex = 102;
-            this.btnSelect.Text = "選　択";
-            this.btnSelect.UseVisualStyleBackColor = false;
-            this.btnSelect.Visible = false;
-            this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click);
-            // 
-            // btnCreate
-            // 
-            this.btnCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnCreate.BackColor = System.Drawing.Color.White;
-            this.btnCreate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnCreate.ForeColor = System.Drawing.Color.Green;
-            this.btnCreate.Location = new System.Drawing.Point(420, 657);
-            this.btnCreate.Name = "btnCreate";
-            this.btnCreate.Size = new System.Drawing.Size(120, 30);
-            this.btnCreate.TabIndex = 103;
-            this.btnCreate.Text = "新　規";
-            this.btnCreate.UseVisualStyleBackColor = false;
-            this.btnCreate.Visible = false;
-            this.btnCreate.Click += new System.EventHandler(this.btnCreate_Click);
-            // 
-            // grpExample1
-            // 
-            this.grpExample1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.grpExample1.BackColor = System.Drawing.Color.White;
-            this.grpExample1.BorderColor = System.Drawing.Color.Red;
-            this.grpExample1.Controls.Add(this.lblReqSumType03);
-            this.grpExample1.Controls.Add(this.lblReqSumType01);
-            this.grpExample1.Controls.Add(this.lblReqSumType02);
-            this.grpExample1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.grpExample1.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.grpExample1.Location = new System.Drawing.Point(183, 657);
-            this.grpExample1.Name = "grpExample1";
-            this.grpExample1.Size = new System.Drawing.Size(324, 28);
-            this.grpExample1.TabIndex = 104;
-            this.grpExample1.TabStop = false;
-            this.grpExample1.Visible = false;
-            // 
-            // lblReqSumType03
-            // 
-            this.lblReqSumType03.BackColor = System.Drawing.Color.LightGray;
-            this.lblReqSumType03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblReqSumType03.ForeColor = System.Drawing.Color.White;
-            this.lblReqSumType03.Location = new System.Drawing.Point(218, 4);
-            this.lblReqSumType03.Name = "lblReqSumType03";
-            this.lblReqSumType03.Size = new System.Drawing.Size(100, 20);
-            this.lblReqSumType03.TabIndex = 1;
-            this.lblReqSumType03.Text = "対 象 外";
-            this.lblReqSumType03.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblReqSumType01
-            // 
-            this.lblReqSumType01.BackColor = System.Drawing.Color.Yellow;
-            this.lblReqSumType01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblReqSumType01.ForeColor = System.Drawing.Color.Black;
-            this.lblReqSumType01.Location = new System.Drawing.Point(6, 4);
-            this.lblReqSumType01.Name = "lblReqSumType01";
-            this.lblReqSumType01.Size = new System.Drawing.Size(100, 20);
-            this.lblReqSumType01.TabIndex = 0;
-            this.lblReqSumType01.Text = "選択可能";
-            this.lblReqSumType01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblReqSumType02
-            // 
-            this.lblReqSumType02.BackColor = System.Drawing.Color.LightPink;
-            this.lblReqSumType02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblReqSumType02.ForeColor = System.Drawing.Color.Black;
-            this.lblReqSumType02.Location = new System.Drawing.Point(112, 4);
-            this.lblReqSumType02.Name = "lblReqSumType02";
-            this.lblReqSumType02.Size = new System.Drawing.Size(100, 20);
-            this.lblReqSumType02.TabIndex = 0;
-            this.lblReqSumType02.Text = "選 択 済";
-            this.lblReqSumType02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // FrmConstructionLedger
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -1395,6 +1371,12 @@
         private System.Windows.Forms.RadioButton radioButton2;
         private System.Windows.Forms.RadioButton radioButton3;
         private System.Windows.Forms.Button btnRestore;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.Button btnCreate;
+        private GroupBoxEx grpExample1;
+        private System.Windows.Forms.Label lblReqSumType01;
+        private System.Windows.Forms.Label lblReqSumType02;
+        private System.Windows.Forms.Label lblReqSumType03;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column27;
@@ -1423,11 +1405,5 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column25;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column26;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column28;
-        private System.Windows.Forms.Button btnSelect;
-        private System.Windows.Forms.Button btnCreate;
-        private GroupBoxEx grpExample1;
-        private System.Windows.Forms.Label lblReqSumType01;
-        private System.Windows.Forms.Label lblReqSumType02;
-        private System.Windows.Forms.Label lblReqSumType03;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx	(revision 352)
@@ -117,9 +117,6 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <metadata name="lblCellTotal.Locked" 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>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 352)
@@ -1669,6 +1669,50 @@
         }
         #endregion
 
+        #region 積算見積データより値を取得する
+        /// <summary>
+        /// 積算見積データより値を取得する
+        /// </summary>
+        private void GetEstimateValue(ref List<KeyValuePair<int, int>> EstimateVal)
+        {
+            IOEstimateDataDetail eddDB = new IOEstimateDataDetail();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("Select");
+                strSQL.Append(" B.ConstructionCode");
+                strSQL.Append(", A.ComponentCode");
+                strSQL.Append(", A.ComponentName");
+                strSQL.Append(", B.PriceValue");
+                strSQL.Append(" From");
+                strSQL.Append(" componentmaster As A");
+                strSQL.Append(" Inner join estimatedata As B");
+                strSQL.Append("        On B.ComponentCode = A.ComponentCode");
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" B.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL.AppendFormat(" And A.ComponentCode in ({0}, {1})", m_CommonCosts.NormalManagementPublic
+                                                                        , m_CommonCosts.FieldManagementPublic);
+
+                ArrayList arList = new ArrayList();
+                eddDB.ExecuteReader(strSQL.ToString(), ref arList);
+
+                EstimateVal.Clear();
+                foreach (object[] objRec in arList)
+                {
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                eddDB.close(); eddDB = null;
+            }
+        }
+        #endregion
+
         #region 工事予算書より経費を表示する
         /// <summary>
         /// 工事予算書より経費を表示する
@@ -1693,6 +1737,8 @@
                 // 工事予算書より経費を取り込む
                 GetBudgetExpensesList();
 
+                // 先頭行取得
+                int nTopRow = dgv.RowCount;
                 foreach (object[] wrkExpense in m_ExpensesList)
                 {
                     // 経費率取得
@@ -1729,6 +1775,9 @@
                     // 行セット
                     CreateDataRow(RowData);
                 }
+                // 一般管理費セット
+                GetEstimateNormalManege();
+
                 return true;
             }
             catch (Exception ex)
@@ -1739,6 +1788,121 @@
         }
         #endregion
 
+        #region 積算見積書より一般管理費取得
+        /// <summary>
+        /// 積算見積書より一般管理費取得
+        /// </summary>
+        private void GetEstimateNormalManege()
+        {
+            IOEstimateData edDB = new IOEstimateData();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+
+                strSQL.Append("Select");
+                strSQL.Append(" SUM(A.PriceValue)");
+                strSQL.Append(" From estimatedata As A");
+                strSQL.Append(" Where");
+                strSQL.Append(" (");
+                strSQL.AppendFormat(" A.ConstructionCode = {0}", m_ConstructionCode);
+
+                strSQL.Append(" Or A.ConstructionCode IN (");
+                strSQL.Append(" Select");
+                strSQL.Append(" B.FluctuationCode");
+                strSQL.Append(" From constructionlink As B");
+                strSQL.Append(" Inner Join processapproval As C");
+                strSQL.Append("        On C.ConstructionCode = B.FluctuationCode");
+                strSQL.AppendFormat(" And C.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL.Append("       And C.SeqNo = 1");
+                strSQL.AppendFormat(" And C.ApprovalStatus = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.AppendFormat(" Where B.ConstructionCode = {0})", m_ConstructionCode);
+                strSQL.Append(")");
+
+                strSQL.AppendFormat(" And A.ComponentCode in ({0}, {1})"
+                                        , m_CommonCosts.NormalManagementPublic
+                                        , m_CommonCosts.NormalManagementPrivate);
+
+                ArrayList arList = new ArrayList();
+                if (!edDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
+                int nRetVal = 0;
+                foreach (object[] curRec in arList)
+                {
+                    nRetVal = CommonMotions.cnvInt(curRec[0]);
+                }
+
+                int nSetRow = m_CostsRowCount[(int)CostsRowLine.ExpensesRowLine] - 1;
+                dgvAllDisplay.Rows[nSetRow].Cells[(int)GridColumn.EstimatePrice].Value = nRetVal.ToString("#,#");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                edDB.close(); edDB = null;
+            }
+        }
+        #endregion
+
+        #region 積算見積書より現場管理費取得
+        /// <summary>
+        /// 積算見積書より現場管理費取得
+        /// </summary>
+        private void GetEstimateFieldManage()
+        {
+            IOEstimateData edDB = new IOEstimateData();
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+
+                strSQL.Append("Select");
+                strSQL.Append(" SUM(A.PriceValue)");
+                strSQL.Append(" From estimatedata As A");
+                strSQL.Append(" Where");
+                strSQL.Append(" (");
+                strSQL.AppendFormat(" A.ConstructionCode = {0}", m_ConstructionCode);
+
+                strSQL.Append(" Or A.ConstructionCode IN (");
+                strSQL.Append(" Select");
+                strSQL.Append(" B.FluctuationCode");
+                strSQL.Append(" From constructionlink As B");
+                strSQL.Append(" Inner Join processapproval As C");
+                strSQL.Append("        On C.ConstructionCode = B.FluctuationCode");
+                strSQL.AppendFormat(" And C.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL.Append("       And C.SeqNo = 1");
+                strSQL.AppendFormat(" And C.ApprovalStatus = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL.AppendFormat(" Where B.ConstructionCode = {0})", m_ConstructionCode);
+                strSQL.Append(")");
+
+                strSQL.AppendFormat(" And A.ComponentCode in ({0}, {1})"
+                                        , m_CommonCosts.FieldManagementPublic
+                                        , m_CommonCosts.FieldManagementPrivate);
+
+                ArrayList arList = new ArrayList();
+                if (!edDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
+                int nRetVal = 0;
+                foreach (object[] curRec in arList)
+                {
+                    nRetVal = CommonMotions.cnvInt(curRec[0]);
+                }
+
+                // 現場管理費を人件費タイトルへセットする
+                int nSetRow = m_CostsRowCount[(int)CostsRowLine.InstructorRowLine] - 1;
+                dgvAllDisplay.Rows[nSetRow].Cells[(int)GridColumn.EstimatePrice].Value = nRetVal.ToString("#,#");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                edDB.close(); edDB = null;
+            }
+        }
+        #endregion
+
         #region 工事予算書より経費データを取り込む
         /// <summary>
         /// 工事予算書より経費データを取り込む
@@ -2101,6 +2265,9 @@
                 GetDispDataFromConstructionBudget(DetailList, GroupNo, (int)FrmConstructionBudget.DataGroup.AssistantCosts, icnt++);
                 // 担当者給与経費
                 GetDispDataFromConstructionBudget(DetailList, GroupNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++);
+
+                // 現場管理費セット
+                GetEstimateFieldManage();
             }
             catch (Exception ex)
             {
@@ -2881,6 +3048,7 @@
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
             IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
             IOProcessApproval ProAppDB = new IOProcessApproval();
+                DataGridView dgv = dgvAllDisplay;
             try
             {
                 // 工事詳細台帳データを読み込む
@@ -2908,7 +3076,6 @@
                 // 支払枠（列）を作成する
                 CreatePaymentColumns(DetailList);
 
-                DataGridView dgv = dgvAllDisplay;
                 // グリッド行削除
                 dgv.Rows.Clear();
 
@@ -3018,12 +3185,14 @@
 
                     // ----- 支払いデータをセットする
                     double TotalValue = 0;
+                    int nGrpCol = (int)IOConstructionLedgerDetail.TableColumn.GroupCount;
+                    int nLineCol = (int)IOConstructionLedgerDetail.TableColumn.LineCount;
                     for (int iz = iy; iz < DetailList.Count; iz++)
                     {
                         object[] objExcuteRec = (object[])DetailList[iz];
                         // グループか行番号が違えば次の台帳行へ
-                        if ((DetailRec.GroupCount != CommonMotions.cnvInt(objExcuteRec[(int)IOConstructionLedgerDetail.TableColumn.GroupCount]))
-                        || (DetailRec.LineCount != CommonMotions.cnvInt(objExcuteRec[(int)IOConstructionLedgerDetail.TableColumn.LineCount])))
+                        if ((DetailRec.GroupCount != CommonMotions.cnvInt(objExcuteRec[nGrpCol]))
+                            || (DetailRec.LineCount != CommonMotions.cnvInt(objExcuteRec[nLineCol])))
                         {
                             iy = iz - 1;
                             break;
@@ -3067,7 +3236,7 @@
                     RowData[GridColMax + (int)ColPayTotal.PaymentBurdens] = DetailRec.PaymentBurden.ToString("#,0");
 
                     // *----------------------------------------------------------------*
-                    // *----- いきなり工事詳細台帳が出来たものは、経費を再計算する -----*
+                    // *----- 承認無に工事詳細台帳が出来たものは、経費を再計算する -----*
                     // *----------------------------------------------------------------*
                     if (LedgerRec.ComplateFlg != (int)ConstructionLedger.CompFlagDef.Complated
                         && NoneApp == true
@@ -3167,6 +3336,11 @@
                     SetComplateButtonStyle();
                 }
 
+                // 一般管理費セット
+                GetEstimateNormalManege();
+                // 現場管理費セット
+                GetEstimateFieldManage();
+
                 return true;
             }
             catch (Exception ex)
@@ -3182,6 +3356,8 @@
                 LedgerDB.close(); LedgerDB = null;
                 DetailDB.close(); DetailDB = null;
                 ProAppDB.close(); ProAppDB = null;
+
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -3219,6 +3395,20 @@
 
                 // 支払金額
                 int PaymentPoint = (int)GridColumn.Payment;
+
+                // 支払金額の先頭は常に工事開始月にする 2018/05/23
+                DataGridView dgv = dgvAllDisplay;
+                DateTime dtFMounth = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
+                string strFMounth = YearMonthFormat(dtFMounth.Year, dtFMounth.Month);
+                for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
+                {
+                    // グリッドの対象列を探す
+                    if (!strFMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+                    PaymentPoint = ix;
+                    break;
+                }
+                
+                // 計上月を確認する
                 RowData[PaymentPoint] = dExpenss.ToString("#,0");
 
                 // 合計金額セット
@@ -5369,89 +5559,38 @@
 
                 bool bPermit = false;
 
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        // システム管理者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // 最高機密管理者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                    {
-                        // 統括責任者
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                    {
 
-                        // 上長は工事が自部署の関連だけ
-                        List<int> PersonList = new List<int>();
-                        PersonList.Add(m_ConstructionBaseInfo.SalesPersonCode);
-                        PersonList.Add(m_ConstructionBaseInfo.ConstructionPersonCode);
-                        if (m_ConstructionBaseInfo.ConstrSubPersonCode != 0) PersonList.Add(m_ConstructionBaseInfo.ConstrSubPersonCode);
-                        if (m_ConstructionBaseInfo.ConstructionInstructor != 0) PersonList.Add(m_ConstructionBaseInfo.ConstructionInstructor);
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
+                int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
+                int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者アクセス
 
-                        foreach (int Personcode in PersonList)
-                        {
-                            string strSQL = PersonDB.CreatePrimarykeyString(Personcode);
-                            PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                            if (!PersonDB.SelectAction(strSQL, ref PersonRec)) continue;
-
-                            // 所属上長では無ければfalse
-                            if (PersonRec.DepartmentCode == CommonMotions.LoginUserData.DepartmentCode)
-                            {
-                                bPermit = true;
-                                break;
-                            }
-                        }
-
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                    {
-                        // 一般ユーザー
-                        bPermit = false;
-                    }
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)                               // システム管理者
+                {
+                    // ===== 全データ対象の場合はOK
+                    bPermit = true;
                 }
-                else
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)       // 経営者アクセス
                 {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
-                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
-                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
-                    int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者アクセス
-
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)                               // システム管理者
-                    {
-                        // ===== 全データ対象の場合はOK
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)       // 経営者アクセス
-                    {
-                        // ===== 全データ対象の場合はOK
-                        bPermit = true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)       // 統括者アクセス
-                    {
-                        // ===== 統括者アクセス対象の条件を調べる
-                        bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)       // 所属長アクセス
-                    {
-                        // ===== 所属長アクセス対象の条件を調べる
-                        bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[NRank].Key)       // 一般者アクセス
-                    {
-                        // ===== 一般者アクセス対象の条件を調べる
-                        // 一般ユーザー
-                        bPermit = false;
-                    }
+                    // ===== 全データ対象の場合はOK
+                    bPermit = true;
                 }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)       // 統括者アクセス
+                {
+                    // ===== 統括者アクセス対象の条件を調べる
+                    bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)       // 所属長アクセス
+                {
+                    // ===== 所属長アクセス対象の条件を調べる
+                    bPermit = ClsSecurityPermission.PersonDataAccess(m_ConstructionCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[NRank].Key)       // 一般者アクセス
+                {
+                    // ===== 一般者アクセス対象の条件を調べる
+                    // 一般ユーザー
+                    bPermit = false;
+                }
 
                 return bPermit;
             }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 352)
@@ -53,6 +53,21 @@
             this.btnLedgerStatus = new System.Windows.Forms.Button();
             this.btnOtherProc = new System.Windows.Forms.Button();
             this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.groupBox1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.pnlPayroll = new System.Windows.Forms.Panel();
             this.label6 = new System.Windows.Forms.Label();
@@ -92,21 +107,6 @@
             this.label3 = new System.Windows.Forms.Label();
             this.label5 = new System.Windows.Forms.Label();
             this.label7 = new System.Windows.Forms.Label();
-            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
             this.groupBox1.SuspendLayout();
             this.pnlPayroll.SuspendLayout();
@@ -173,6 +173,7 @@
             this.btnLedgerStatus.TabIndex = 47;
             this.btnLedgerStatus.Text = "未作成台帳確認";
             this.btnLedgerStatus.UseVisualStyleBackColor = false;
+            this.btnLedgerStatus.Visible = false;
             this.btnLedgerStatus.Click += new System.EventHandler(this.btnLedgerStatus_Click);
             // 
             // btnOtherProc
@@ -249,6 +250,171 @@
             this.dgvMaster.Leave += new System.EventHandler(this.dgvMaster_Leave);
             this.dgvMaster.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvMaster_MouseUp);
             // 
+            // 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;
+            // 
+            // Column13
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column13.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column13.Frozen = true;
+            this.Column13.HeaderText = "済";
+            this.Column13.Name = "Column13";
+            this.Column13.ReadOnly = true;
+            this.Column13.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column13.Width = 30;
+            // 
+            // Column14
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Column14.Frozen = true;
+            this.Column14.HeaderText = "部署";
+            this.Column14.Name = "Column14";
+            this.Column14.ReadOnly = true;
+            this.Column14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "担当者名";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "工事コード";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Visible = false;
+            this.Column3.Width = 5;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle8;
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "工　事　名　称";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 210;
+            // 
+            // Column15
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle9;
+            this.Column15.Frozen = true;
+            this.Column15.HeaderText = "状　態";
+            this.Column15.Name = "Column15";
+            this.Column15.ReadOnly = true;
+            this.Column15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle10;
+            this.Column5.Frozen = true;
+            this.Column5.HeaderText = "受注金額";
+            this.Column5.Name = "Column5";
+            this.Column5.ReadOnly = true;
+            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column5.Width = 120;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle11.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle11;
+            this.Column6.HeaderText = "会社経費";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle12.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle12;
+            this.Column7.HeaderText = "部署経費";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column8
+            // 
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle13.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle13;
+            this.Column8.HeaderText = "営業経費";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle14.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle14;
+            this.Column9.HeaderText = "総支払額";
+            this.Column9.Name = "Column9";
+            this.Column9.ReadOnly = true;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column10
+            // 
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle15.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle15;
+            this.Column10.HeaderText = "粗　利";
+            this.Column10.Name = "Column10";
+            this.Column10.ReadOnly = true;
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column11
+            // 
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle16.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle16;
+            this.Column11.HeaderText = "給　与";
+            this.Column11.Name = "Column11";
+            this.Column11.ReadOnly = true;
+            this.Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column11.Visible = false;
+            this.Column11.Width = 5;
+            // 
+            // Column12
+            // 
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle17.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle17;
+            this.Column12.HeaderText = "純利益";
+            this.Column12.Name = "Column12";
+            this.Column12.ReadOnly = true;
+            this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
             // groupBox1
             // 
             this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
@@ -769,173 +935,8 @@
             this.label7.Text = "第";
             this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // Column1
+            // FrmLedgerList
             // 
-            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;
-            // 
-            // Column13
-            // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column13.DefaultCellStyle = dataGridViewCellStyle4;
-            this.Column13.Frozen = true;
-            this.Column13.HeaderText = "済";
-            this.Column13.Name = "Column13";
-            this.Column13.ReadOnly = true;
-            this.Column13.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column13.Width = 30;
-            // 
-            // Column14
-            // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column14.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column14.Frozen = true;
-            this.Column14.HeaderText = "部署";
-            this.Column14.Name = "Column14";
-            this.Column14.ReadOnly = true;
-            this.Column14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column2
-            // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle6;
-            this.Column2.Frozen = true;
-            this.Column2.HeaderText = "担当者名";
-            this.Column2.Name = "Column2";
-            this.Column2.ReadOnly = true;
-            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column3
-            // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle7;
-            this.Column3.Frozen = true;
-            this.Column3.HeaderText = "工事コード";
-            this.Column3.Name = "Column3";
-            this.Column3.ReadOnly = true;
-            this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column3.Visible = false;
-            this.Column3.Width = 5;
-            // 
-            // Column4
-            // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle8;
-            this.Column4.Frozen = true;
-            this.Column4.HeaderText = "工　事　名　称";
-            this.Column4.Name = "Column4";
-            this.Column4.ReadOnly = true;
-            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column4.Width = 210;
-            // 
-            // Column15
-            // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column15.DefaultCellStyle = dataGridViewCellStyle9;
-            this.Column15.Frozen = true;
-            this.Column15.HeaderText = "状　態";
-            this.Column15.Name = "Column15";
-            this.Column15.ReadOnly = true;
-            this.Column15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column5
-            // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle10.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle10;
-            this.Column5.Frozen = true;
-            this.Column5.HeaderText = "受注金額";
-            this.Column5.Name = "Column5";
-            this.Column5.ReadOnly = true;
-            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column5.Width = 120;
-            // 
-            // Column6
-            // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle11.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle11;
-            this.Column6.HeaderText = "会社経費";
-            this.Column6.Name = "Column6";
-            this.Column6.ReadOnly = true;
-            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column7
-            // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle12;
-            this.Column7.HeaderText = "部署経費";
-            this.Column7.Name = "Column7";
-            this.Column7.ReadOnly = true;
-            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column8
-            // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle13;
-            this.Column8.HeaderText = "営業経費";
-            this.Column8.Name = "Column8";
-            this.Column8.ReadOnly = true;
-            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column9
-            // 
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle14.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle14;
-            this.Column9.HeaderText = "総支払額";
-            this.Column9.Name = "Column9";
-            this.Column9.ReadOnly = true;
-            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column10
-            // 
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column10.DefaultCellStyle = dataGridViewCellStyle15;
-            this.Column10.HeaderText = "粗　利";
-            this.Column10.Name = "Column10";
-            this.Column10.ReadOnly = true;
-            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column11
-            // 
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle16.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column11.DefaultCellStyle = dataGridViewCellStyle16;
-            this.Column11.HeaderText = "給　与";
-            this.Column11.Name = "Column11";
-            this.Column11.ReadOnly = true;
-            this.Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column11.Visible = false;
-            this.Column11.Width = 5;
-            // 
-            // Column12
-            // 
-            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle17.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column12.DefaultCellStyle = dataGridViewCellStyle17;
-            this.Column12.HeaderText = "純利益";
-            this.Column12.Name = "Column12";
-            this.Column12.ReadOnly = true;
-            this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // FrmLedgerStatus
-            // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
@@ -953,7 +954,7 @@
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
             this.KeyPreview = true;
             this.MinimizeBox = false;
-            this.Name = "FrmLedgerStatus";
+            this.Name = "FrmLedgerList";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionLedgerList_FormClosing);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 352)
@@ -82,20 +82,9 @@
                 // �O���b�h�̏����擾����
                 SetGridInfo();
 
-                // ----- ���쐬�䒠�m�F��ʃ{�^���\���i�o�c�҂�����������j
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    int Master = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key;
-                    if (CommonMotions.LoginUserData.SecurityManagement == Master) btnLedgerStatus.Visible = true;
-                    else btnLedgerStatus.Visible = false;
-                }
-                else
-                {
-                    int Master = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key;
-                    // �䒠�󋵉�ʃ{�^���\��
-                    int editflg = 0;
-                    btnLedgerStatus.Visible = ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.PriceOfBudget, ref editflg);
-                }
+                // �䒠�󋵉�ʃ{�^���\��
+                int editflg = 0;
+                btnLedgerStatus.Visible = ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.PriceOfBudget, ref editflg);
             }
             catch (Exception ex)
             {
@@ -817,7 +806,7 @@
                 ProgressBar.Value = 0;
 
                 btnEnd.Visible = !bDisp;
-                btnLedgerStatus.Visible = !bDisp;
+                //btnLedgerStatus.Visible = !bDisp;
 
                 numUDConstPro.Enabled = !bDisp;
                 cmbDepartment.Enabled = !bDisp;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostCalculation/FrmCostCalculation.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostCalculation/FrmCostCalculation.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CostCalculation/FrmCostCalculation.cs	(revision 352)
@@ -40,34 +40,34 @@
         /// <summary>
         /// プロセス番号
         /// </summary>
-        private enum ProcessNo
+        public enum ProcessNo
         {
             /// <summary>
-            /// 新営建築工事
+            /// 0:建築工事（新営）
             /// </summary>
             Process1 = 0,
             /// <summary>
-            /// 改修建築工事
+            /// 1:建築工事（改修）
             /// </summary>
             Process2,
             /// <summary>
-            /// 新営電気設備工事
+            /// 2:電気設備工事（新営）
             /// </summary>
             Process3,
             /// <summary>
-            /// 改修電気設備工事
+            /// 3:電気設備工事（改修）
             /// </summary>
             Process4,
             /// <summary>
-            /// 新営機械設備工事
+            /// 4:機械設備工事（新営）
             /// </summary>
             Process5,
             /// <summary>
-            /// 改修機械設備工事
+            /// 5:機械設備工事（改修）
             /// </summary>
             Process6,
             /// <summary>
-            /// 昇降機設備工事
+            /// 6:昇降機設備工事(Reserve)
             /// </summary>
             Process7,
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs	(revision 352)
@@ -29,67 +29,6 @@
 //*----------------------------------------------------------------------------*
 namespace ProcessManagement.Forms.DataEntry
 {
-    #region �\���O���[�v
-    /// <summary>
-    /// �O���[�v
-    /// </summary>
-    public enum GroupName_EstimateBudget
-    {
-        /// <summary>
-        /// ��
-        /// </summary>
-        Empty = 0,
-        /// <summary>
-        /// �O����
-        /// </summary>
-        OutSource,
-        /// <summary>
-        /// ���Ў{�H��
-        /// </summary>
-        MyConstruction,
-        /// <summary>
-        /// ���ʉ��ݔ�
-        /// </summary>
-        CommonTemp,
-        /// <summary>
-        /// ���ʉ��ݎZ���
-        /// </summary>
-        CommonTempCalcCosts,
-        /// <summary>
-        /// �ςݏグ���ʔ�
-        /// </summary>
-        CommonPileUp,
-        /// <summary>
-        /// ����Ǘ���
-        /// </summary>
-        FieldManage,
-        /// <summary>
-        /// �ςݏグ����Ǘ���
-        /// </summary>
-        FieldManagePileUp,
-        /// <summary>
-        /// ��ʊǗ���
-        /// </summary>
-        UsualManage,
-        /// <summary>
-        /// �w���i
-        /// </summary>
-        PurchasePrice,
-        /// <summary>
-        /// ���o��
-        /// </summary>
-        Expenss,
-        /// <summary>
-        /// �����
-        /// </summary>
-        Dispose,
-        /// <summary>
-        /// �[������
-        /// </summary>
-        Fraction,
-    }
-    #endregion
-
     public partial class FrmEstimateBudget : Form
     {
         #region �g�p��`
@@ -98,6 +37,68 @@
         #endregion
 
         #region �萔
+
+        #region �\���O���[�v
+        /// <summary>
+        /// �O���[�v
+        /// </summary>
+        public enum GroupName
+        {
+            /// <summary>
+            ///  0:��
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            ///  1:�O����
+            /// </summary>
+            OutSource,
+            /// <summary>
+            ///  2:���Ў{�H��
+            /// </summary>
+            MyConstruction,
+            /// <summary>
+            ///  3:���ʉ��ݔ�
+            /// </summary>
+            CommonTemp,
+            /// <summary>
+            ///  4:���ʉ��ݎZ���
+            /// </summary>
+            CommonTempCalcCosts,
+            /// <summary>
+            ///  5:�ςݏグ���ʔ�
+            /// </summary>
+            CommonPileUp,
+            /// <summary>
+            ///  6:����Ǘ���
+            /// </summary>
+            FieldManage,
+            /// <summary>
+            ///  7:�ςݏグ����Ǘ���
+            /// </summary>
+            FieldManagePileUp,
+            /// <summary>
+            ///  8:��ʊǗ���
+            /// </summary>
+            UsualManage,
+            /// <summary>
+            ///  9:�w���i
+            /// </summary>
+            PurchasePrice,
+            /// <summary>
+            /// 10:���o��
+            /// </summary>
+            Expenss,
+            /// <summary>
+            /// 11:�����
+            /// </summary>
+            Dispose,
+            /// <summary>
+            /// 12:�[������
+            /// </summary>
+            Fraction,
+        }
+        #endregion
+
         #region �O���b�h�\���J����
         /// <summary>
         /// �\���J����
@@ -386,6 +387,11 @@
         private int m_GridLastLine = 0;
 
         /// <summary>
+        /// �H����p��`�N���X
+        /// </summary>
+        private ClsCommonCosts m_CommonCosts = new ClsCommonCosts();
+
+        /// <summary>
         /// �Q�ƃt���O
         /// </summary>
         private bool m_EditLock = false;
@@ -400,7 +406,6 @@
         /// </summary>
         private bool m_ParentEnd = false;
         // *-----* ���ʏ����ݒ� *-----*
-
         #endregion
 
         #region �v���p�e�B
@@ -1057,7 +1062,7 @@
 
                 // �ςݏグ����Ǘ���̌��ϋ��z�����͂��ꂽ�ꍇ�͌����z�ɂ��Z�b�g����
                 string strName = CommonMotions.cnvString(dgv[(int)DispGridColumn.FirstString, e.RowIndex].Value).Trim();
-                if (strName.Equals(GroupTitle[(int)GroupName_EstimateBudget.FieldManagePileUp].Trim()) &&
+                if (strName.Equals(GroupTitle[(int)GroupName.FieldManagePileUp].Trim()) &&
                     e.ColumnIndex == (int)DispGridColumn.EstimatePrice)
                 {
                     dgv[(int)DispGridColumn.NegotiationPrice, e.RowIndex].Value = CommonMotions.cnvInt(dgv[(int)DispGridColumn.EstimatePrice, e.RowIndex].Value).ToString("#,0");
@@ -1099,7 +1104,7 @@
 
                 // ���͉�Ђ̑I���ł͂Ȃ��ꍇ�͏������Ȃ�
                 int GroupCnt = CommonMotions.cnvInt(CurrentRow.Cells[(int)DispGridColumn.GroupCount].Value);
-                if (GroupCnt != (int)GroupName_EstimateBudget.OutSource)
+                if (GroupCnt != (int)GroupName.OutSource)
                 {
                     MessageBox.Show("�O����̍s��I�����ĉ�����", "�I���G���[", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     return;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 352)
@@ -414,7 +414,8 @@
                 strSQL.Append(DetailDB.CreatePrimarykeyString(m_ConstructionCode));
                 strSQL.Append(" And (");
                 int i = 0;
-                foreach (int Comp in ClsCommonCosts.s_BiddingCode)
+                //foreach (int Comp in ClsComCostsStatic.s_BiddingCode)
+                foreach (int Comp in m_CommonCosts.BiddingCode)
                 {
                     if (i != 0) strSQL.Append(" Or");
                     strSQL.AppendFormat(" ComponentCode = {0}", Comp);
@@ -457,7 +458,7 @@
                     // 行追加
                     iLineCnt = dgv.Rows.Add(1);
                     // 購入品は見積データが無い
-                    if (DataRec.GroupCount != (int)GroupName_EstimateBudget.PurchasePrice)
+                    if (DataRec.GroupCount != (int)GroupName.PurchasePrice)
                     {
                         // 見積データセット時は見積時金額をセット
                         dgv.Rows[iLineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value = DataRec.EstimatePrice.ToString("#,0");
@@ -696,7 +697,7 @@
                 double NegotiationPrice = 0;
 
                 // 共通仮設費は計を作成する
-                if (GroupCnt == (int)GroupName_EstimateBudget.CommonTempCalcCosts || GroupCnt == (int)GroupName_EstimateBudget.CommonPileUp)
+                if (GroupCnt == (int)GroupName.CommonTempCalcCosts || GroupCnt == (int)GroupName.CommonPileUp)
                     SetCommontemprartTotal();
 
                 // グループ計を集計する（小計）
@@ -769,7 +770,7 @@
                             wrkRow.Cells[(int)DispGridColumn.NegotiationPrice].Value = G_NegotiationTotal.ToString("#,0");
 
                             // 共通仮設費は計を作成する
-                            if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName_EstimateBudget.CommonTemp)
+                            if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName.CommonTemp)
                             {
                                 SetCommontemprartTotal();
                             }
@@ -845,7 +846,7 @@
                     // 小計以外は処理しない
                     if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != (int)TitleDivision.Group) continue;
                     // 共通仮設費は加算しない（算定率・積み上げですでに計上しているため）
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName_EstimateBudget.CommonTemp) continue;
+                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName.CommonTemp) continue;
 
                     // 加算
                     if (!CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.EstimatePrice].Value))
@@ -1009,7 +1010,8 @@
                 strSQL.Append(" LEFT JOIN  COMPONENTMASTER C ON A.COMPONENTCODE = C.COMPONENTCODE");
                 strSQL.Append(" LEFT JOIN  CONSTRUCTIONITEMMASTER D ON A.ITEMCODE = D.ITEMCODE");
                 strSQL.AppendFormat(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);                                     // 対象工事のみ
-                strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", ClsCommonCosts.s_CommunityCompCode);                         // 共通仮設費以外を対象にする
+                //strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", ClsComCostsStatic.s_CommunityCompCode);                         // 共通仮設費以外を対象にする
+                strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", m_CommonCosts.CommonTemporyPublic);                            // 共通仮設費以外を対象にする
                 strSQL.Append(" And A.MYEXPENSESFLG = 0");                                                                      // 経費を除外する
                 //strSQL.Append(" And (A.COMPANYCODE != 0");
                 strSQL.AppendFormat(" And A.COMPANYCODE != {0}",
@@ -1028,7 +1030,7 @@
                 if (arList.Count == 0) return;
 
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.OutSource], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.OutSource], (int)TitleDivision.Group);
 
                 // 先頭レコードブレイクキー取得
                 object[] wrkstart = (object[])arList[0];
@@ -1048,7 +1050,7 @@
                     {
                         // データ表示
                         EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                        Datarec.GroupCount = (int)GroupName_EstimateBudget.OutSource;       // グループ番号
+                        Datarec.GroupCount = (int)GroupName.OutSource;       // グループ番号
                         Datarec.ComponentCode = iCompomentCode;                             // 構成コード
                         Datarec.ItemCode = iItemCode;                                       // 工種キー
                         Datarec.CompanyCode = BreakCode;                                    // 協力会社コード
@@ -1097,7 +1099,7 @@
                 if (dSumaryWork != 0)
                 {
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.OutSource;   // グループ番号
+                    Datarec.GroupCount = (int)GroupName.OutSource;   // グループ番号
                     Datarec.ComponentCode = iCompomentCode;                         // 構成コード
                     Datarec.CompanyCode = BreakCode;                                // 協力会社コード
                     if (CompanyName.Length != 0)
@@ -1120,8 +1122,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.OutSource] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.OutSource);
+                string strDspName = GroupTitle[(int)GroupName.OutSource] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.OutSource);
             }
             catch (Exception ex)
             {
@@ -1148,10 +1150,11 @@
                 strSQL.Append("SELECT B.COMPONENTNAME,A.ITEMNAME,SUM(A.LINETOTAL),A.COMPONENTCODE,A.ITEMCODE");
                 strSQL.Append(" FROM ESTIMATEDATADETAIL A, COMPONENTMASTER B");
                 strSQL.AppendFormat(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);                 // 対象工事のみ
-                strSQL.AppendFormat(" AND A.COMPONENTCODE != {0}", ClsCommonCosts.s_CommunityCompCode);     // 共通仮設費以外を対象にする
+                //strSQL.AppendFormat(" AND A.COMPONENTCODE != {0}", ClsComCostsStatic.s_CommunityCompCode);     // 共通仮設費以外を対象にする
+                strSQL.AppendFormat(" AND A.COMPONENTCODE != {0}", m_CommonCosts.CommonTemporyPublic);        // 共通仮設費以外を対象にする
                 strSQL.Append(" And A.MYEXPENSESFLG = 0");                                                  // 経費を除外する
                 strSQL.AppendFormat(" And A.COMPANYCODE = {0}",
-                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);       // 自社施工を除外する
+                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);       // 自社施工のみ
                 strSQL.Append(" And A.COMPONENTCODE = B.COMPONENTCODE");
                 strSQL.Append(" GROUP BY B.COMPONENTNAME, A.COMPONENTCODE, A.ITEMNAME, A.ITEMCODE, A.PageCount");
                 strSQL.Append(" ORDER BY A.COMPONENTCODE, A.ITEMCODE, A.PAGECOUNT");
@@ -1163,7 +1166,7 @@
                 // 空行セット
                 if (dgvAllDisplay.RowCount > 2) InsertBlankLine(1);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.MyConstruction], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.MyConstruction], (int)TitleDivision.Group);
 
                 int BreakCode = 0;
                 double dSumaryWork = 0;
@@ -1189,7 +1192,7 @@
                     iItemCode = CommonMotions.cnvInt(wrkobj[4]);
 
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.MyConstruction; // グループ番号
+                    Datarec.GroupCount = (int)GroupName.MyConstruction; // グループ番号
                     Datarec.ComponentCode = BreakCode;                  // 構成キー
                     Datarec.ItemCode = iItemCode;	                    // 工種キー
                     Datarec.FirstString = ComponentName;                // 構成名称
@@ -1203,8 +1206,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.MyConstruction] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.MyConstruction);
+                string strDspName = GroupTitle[(int)GroupName.MyConstruction] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.MyConstruction);
             }
             catch (Exception ex)
             {
@@ -1230,7 +1233,8 @@
             {
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.AppendFormat(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_CommunityCompCode);    // 共通仮設費を対象にする
+                //strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsComCostsStatic.s_CommunityCompCode);    // 共通仮設費を対象にする
+                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", m_CommonCosts.CommonTemporyPublic);       // 共通仮設費を対象にする
                 strSQL.Append(" AND COMPANYCODE != 0");                                                 // 会社割当のあるものを対象
                 strSQL.Append(" ORDER BY GroupCount, LineCount");
 
@@ -1242,7 +1246,7 @@
 
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.CommonTemp], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.CommonTemp], (int)TitleDivision.Group);
 
                 double dTotal = 0;
                 int icnt = 1;
@@ -1251,8 +1255,9 @@
                 {
                     // 民間のデータセット
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.CommonTemp;                 // グループ番号
-                    Datarec.ComponentCode = ClsCommonCosts.s_CommunityCompCode;  // 構成キー
+                    Datarec.GroupCount = (int)GroupName.CommonTemp;  // グループ番号
+                    //Datarec.ComponentCode = ClsComCostsStatic.s_CommunityCompCode;     // 構成キー
+                    Datarec.ComponentCode = m_CommonCosts.CommonTemporyPublic;        // 構成キー
                     Datarec.ItemCode = DetailRec.ItemCode;	                        // 工種キー
                     Datarec.FirstString = DetailRec.ItemName;                       // 構成名称
                     Datarec.EstimatePrice = DetailRec.LineTotal;                    // 見積時金額
@@ -1263,8 +1268,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.CommonTemp] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.CommonTemp);
+                string strDspName = GroupTitle[(int)GroupName.CommonTemp] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.CommonTemp);
             }
             catch (Exception ex)
             {
@@ -1291,7 +1296,7 @@
             {
                 InsertBlankLine(2);
                 // グリッド行タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.CommonTemp], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.CommonTemp], (int)TitleDivision.Group);
 
                 // 共通仮設費の固定行をセットする
                 SetPublicCommonTempFix();
@@ -1299,8 +1304,10 @@
                 // ----- 積み上げ共通仮設費
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.AppendFormat(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_CommunityCompCode);        // 共通仮設費を対象にする
-                strSQL.AppendFormat(" AND ITEMCODE = {0}", ClsCommonCosts.s_PileUpCommonTempory);           // 積み上げ共通仮設費を対象とする
+                //strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsComCostsStatic.s_CommunityCompCode);        // 共通仮設費を対象にする
+                //strSQL.AppendFormat(" AND ITEMCODE = {0}", ClsComCostsStatic.s_PileUpCommonTempory);           // 積み上げ共通仮設費を対象とする
+                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", m_CommonCosts.CommonTemporyPublic);           // 共通仮設費を対象にする
+                strSQL.AppendFormat(" AND ITEMCODE = {0}", m_CommonCosts.PileUpComTempoPublic);              // 積み上げ共通仮設費を対象とする
                 strSQL.Append(" AND COMPANYCODE != 0");                                                     // 会社割当のあるものを対象
                 strSQL.Append(" ORDER BY PageCount, LineCount");                                            // 見積入力と同じ並びにする
                 List<EstimateDataDetail> DetailList = new List<EstimateDataDetail>();
@@ -1308,7 +1315,7 @@
 
                 InsertBlankLine(1);
                 // 積み上げ共通仮設費タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.CommonPileUp], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.CommonPileUp], (int)TitleDivision.Group);
 
                 // 積み上げ共通費セット
                 int icnt = 1;
@@ -1316,8 +1323,9 @@
                 foreach (EstimateDataDetail DetailRec in DetailList)
                 {
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.CommonPileUp;    // グループ番号
-                    Datarec.ComponentCode = ClsCommonCosts.s_CommunityCompCode;         // 構成キー
+                    Datarec.GroupCount = (int)GroupName.CommonPileUp;    // グループ番号
+                    //Datarec.ComponentCode = ClsComCostsStatic.s_CommunityCompCode;         // 構成キー
+                    Datarec.ComponentCode = m_CommonCosts.CommonTemporyPublic;            // 構成キー
                     Datarec.ItemCode = DetailRec.ItemCode;	                            // 工種キー
                     Datarec.FirstString = DetailRec.ItemName;                           // 構成名称
                     Datarec.EstimatePrice = DetailRec.LineTotal;                        // 見積時金額
@@ -1328,12 +1336,12 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.CommonPileUp] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.CommonPileUp);
+                string strDspName = GroupTitle[(int)GroupName.CommonPileUp] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.CommonPileUp);
 
                 // 共通仮設費計
-                strDspName = GroupTitle[(int)GroupName_EstimateBudget.CommonTemp] + s_TotaFixlName;
-                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.CommonTemp);
+                strDspName = GroupTitle[(int)GroupName.CommonTemp] + s_TotaFixlName;
+                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName.CommonTemp);
             }
             catch (Exception ex)
             {
@@ -1359,7 +1367,7 @@
                 // ブロック計以外はいらない
                 if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != (int)TitleDivision.Group) continue;
                 // 共通仮設の行を探す
-                if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName_EstimateBudget.CommonTemp)
+                if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)GroupName.CommonTemp)
                 {
                     iLineCnt = wrkRow.Index;
                     break;
@@ -1371,9 +1379,9 @@
             // 見積・交渉金額を取得する
             bool GetEstimate = radioButton1.Checked;
             radioButton1.Checked = true;
-            double ETotal = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonTempCalcCosts) + GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonPileUp);
+            double ETotal = GetGroupTotalFromGrid((int)GroupName.CommonTempCalcCosts) + GetGroupTotalFromGrid((int)GroupName.CommonPileUp);
             radioButton2.Checked = true;
-            double NTotal = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonTempCalcCosts) + GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonPileUp);
+            double NTotal = GetGroupTotalFromGrid((int)GroupName.CommonTempCalcCosts) + GetGroupTotalFromGrid((int)GroupName.CommonPileUp);
             radioButton1.Checked = GetEstimate;
 
             // 金額セット
@@ -1400,7 +1408,7 @@
                 double dTotal2 = CalcCommonTemporary(false);
 
                 // 共通仮設算定率セット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.CommonTempCalcCosts], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.CommonTempCalcCosts], (int)TitleDivision.Group);
 
                 // 共通仮設算定率費の行数をセットする
                 m_CommonItemLine = dgv.Rows.Count - 1;
@@ -1424,7 +1432,8 @@
 
                 strSQL.Append(", COMMONCOSTLARGE B, COMMONCOSTMIDDLE C");
                 
-                strSQL.AppendFormat(" WHERE A.LARGECODE = {0}", ClsCommonCosts.s_CommunityCompCode);
+                //strSQL.AppendFormat(" WHERE A.LARGECODE = {0}", ClsComCostsStatic.s_CommunityCompCode);
+                strSQL.AppendFormat(" WHERE A.LARGECODE = {0}", m_CommonCosts.CommonTemporyPublic);
                 strSQL.Append(" AND A.LARGECODE = B.LARGECODE");
                 strSQL.Append(" AND A.LARGECODE = C.LARGECODE");
                 strSQL.Append(" AND A.MIDDLECODE = C.MIDDLECODE");
@@ -1442,7 +1451,7 @@
                 {
                     double TotalPrice = CommonMotions.cnvDouble(wrkobj[6].ToString());
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.CommonTempCalcCosts; // グループ番号
+                    Datarec.GroupCount = (int)GroupName.CommonTempCalcCosts;                // グループ番号
                     Datarec.ComponentCode = CommonMotions.cnvInt(wrkobj[0].ToString());     // 構成キー
                     Datarec.ItemCode = CommonMotions.cnvInt(wrkobj[1].ToString());	        // 工種キー
                     Datarec.FirstString = wrkobj[3].ToString();                             // 構成名称
@@ -1457,8 +1466,8 @@
 
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.CommonTempCalcCosts] + s_TotaFixlName;
-                CreateTotalLine(strDspName, AllTotal, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.CommonTempCalcCosts);
+                string strDspName = GroupTitle[(int)GroupName.CommonTempCalcCosts] + s_TotaFixlName;
+                CreateTotalLine(strDspName, AllTotal, 0, (int)TitleDivision.Group, (int)GroupName.CommonTempCalcCosts);
 
             }
             catch (Exception ex)
@@ -1483,13 +1492,13 @@
                 // 空行セット
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.PurchasePrice], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.PurchasePrice], (int)TitleDivision.Group);
 
 
                 // データ表示
                 EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                Datarec.GroupCount = (int)GroupName_EstimateBudget.PurchasePrice;                       // グループ番号
-                Datarec.FirstString = GroupTitle[(int)GroupName_EstimateBudget.PurchasePrice];          // 構成名称
+                Datarec.GroupCount = (int)GroupName.PurchasePrice;                       // グループ番号
+                Datarec.FirstString = GroupTitle[(int)GroupName.PurchasePrice];          // 構成名称
                 Datarec.NegotiationPrice = 0;                                                           // 交渉時金額
                 DisplayGridData(1, Datarec);
 
@@ -1500,8 +1509,8 @@
                 dgv.Rows[iLine].Cells[(int)DispGridColumn.EstimatePrice].Style.BackColor = s_CommonCalculatedValueBColor;
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.PurchasePrice] + s_TotaFixlName;
-                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.PurchasePrice);
+                string strDspName = GroupTitle[(int)GroupName.PurchasePrice] + s_TotaFixlName;
+                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName.PurchasePrice);
             }
             catch (Exception ex)
             {
@@ -1525,9 +1534,12 @@
                 strSQL.Append("SELECT COMPONENTCODE, ITEMNAME, SPECNAME, PRICEVALUE, FIXEDITEMCODE");
                 strSQL.Append(" FROM ESTIMATEDATA");
                 strSQL.AppendFormat(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL.AppendFormat(" AND (COMPONENTCODE <> {0}", ClsCommonCosts.s_MaterialDisposal);
-                strSQL.AppendFormat(" AND COMPONENTCODE <> {0}", ClsCommonCosts.s_FieldManagementCompCode);
-                strSQL.AppendFormat(" AND COMPONENTCODE <> {0})", ClsCommonCosts.s_NormalManagementCompCode);
+                //strSQL.AppendFormat(" AND (COMPONENTCODE <> {0}", ClsComCostsStatic.s_MaterialDisposal);
+                //strSQL.AppendFormat(" AND COMPONENTCODE <> {0}", ClsComCostsStatic.s_FieldManagementCompCode);
+                //strSQL.AppendFormat(" AND COMPONENTCODE <> {0})", ClsComCostsStatic.s_NormalManagementCompCode);
+                strSQL.AppendFormat(" AND (COMPONENTCODE <> {0}", m_CommonCosts.MaterialDisposalPublic);
+                strSQL.AppendFormat(" AND COMPONENTCODE <> {0}", m_CommonCosts.FieldManagementPublic);
+                strSQL.AppendFormat(" AND COMPONENTCODE <> {0})", m_CommonCosts.NormalManagementPublic);
                 strSQL.AppendFormat(" AND InputFlg = {0}", (int)CommonDefine.DirectInput.Input);
                 strSQL.Append(" ORDER BY LineCount");
 
@@ -1540,7 +1552,7 @@
                 // 空行セット
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.Expenss], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.Expenss], (int)TitleDivision.Group);
 
                 int icnt = 1;
                 double dSumaryWork = 0;
@@ -1558,7 +1570,7 @@
                     // データ表示
                     int iItemCode = CommonMotions.cnvInt(wrkobj[4]);
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.Expenss;    // グループ番号
+                    Datarec.GroupCount = (int)GroupName.Expenss;    // グループ番号
                     Datarec.ComponentCode = CompomentCode;          // 構成キー
                     Datarec.ItemCode = iItemCode;	                // 工種キー
                     Datarec.FirstString = ComponentName;            // 構成名称
@@ -1573,8 +1585,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.Expenss] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.Expenss);
+                string strDspName = GroupTitle[(int)GroupName.Expenss] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.Expenss);
 
             }
             catch (Exception ex)
@@ -1603,7 +1615,8 @@
                 strSQL.Append("SELECT COMPONENTCODE, ITEMNAME, SPECNAME, PRICEVALUE, FIXEDITEMCODE");
                 strSQL.Append(" FROM ESTIMATEDATA");
                 strSQL.AppendFormat(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
-                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsCommonCosts.s_MaterialDisposal);
+                //strSQL.AppendFormat(" AND COMPONENTCODE = {0}", ClsComCostsStatic.s_MaterialDisposal);
+                strSQL.AppendFormat(" AND COMPONENTCODE = {0}", m_CommonCosts.MaterialDisposalPublic);
                 strSQL.Append(" ORDER BY COMPONENTCODE");
 
                 ArrayList arList = new ArrayList();
@@ -1615,7 +1628,7 @@
                 // 空行セット
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.Dispose], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.Dispose], (int)TitleDivision.Group);
 
                 int icnt = 1;
                 double dSumaryWork = 0;
@@ -1634,7 +1647,7 @@
                     int iItemCode = CommonMotions.cnvInt(wrkobj[4]);
 
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.Dispose;    // グループ番号
+                    Datarec.GroupCount = (int)GroupName.Dispose;    // グループ番号
                     Datarec.ComponentCode = CompomentCode;          // 構成キー
                     Datarec.ItemCode = iItemCode;	                // 工種キー
                     Datarec.FirstString = ComponentName;            // 構成名称
@@ -1648,8 +1661,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.Dispose] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.Dispose);
+                string strDspName = GroupTitle[(int)GroupName.Dispose] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.Dispose);
 
             }
             catch (Exception ex)
@@ -1690,7 +1703,7 @@
                 // 空行セット
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.Fraction], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.Fraction], (int)TitleDivision.Group);
 
                 DataGridView dgv = dgvAllDisplay;
                 int icnt = 1;
@@ -1710,7 +1723,7 @@
                     int iItemCode = CommonMotions.cnvInt(wrkobj[4]);
 
                     EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                    Datarec.GroupCount = (int)GroupName_EstimateBudget.Dispose;    // グループ番号
+                    Datarec.GroupCount = (int)GroupName.Fraction;   // グループ番号
                     Datarec.ComponentCode = CompomentCode;          // 構成キー
                     Datarec.ItemCode = iItemCode;	                // 工種キー
                     Datarec.FirstString = ComponentName;            // 構成名称
@@ -1728,8 +1741,8 @@
                 }
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.Fraction] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.Fraction);
+                string strDspName = GroupTitle[(int)GroupName.Fraction] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dTotal, dTotal, (int)TitleDivision.Group, (int)GroupName.Fraction);
 
             }
             catch (Exception ex)
@@ -1752,20 +1765,46 @@
             try
             {
                 int ExecNo = -1;
-                bool bDataExist = false;
-                for (int i = 0; i < ClsCommonCosts.s_ConstructionType.GetLength(0); i++)
+                bool bNRChk = false;
+                //for (int i = 0; i < ClsComCostsStatic.s_ConstructionType.GetLength(0); i++)
+                //{
+                //    for (int ii = 0; ii < ClsComCostsStatic.s_ConstructionType.GetLength(i); ii++)
+                //    {
+                //        if (m_ConstructionBaseInfo.ConstructionType == ClsComCostsStatic.s_ConstructionType[i, ii])
+                //        {
+                //            ExecNo = i;
+                //            bDataExist = true;
+                //            break;
+                //        }
+                //    }
+                //    if (bDataExist) break;
+                //}
+
+                // 公共工事判定（新設）
+                foreach (int nCode in m_CommonCosts.CreateConstrType)
                 {
-                    for (int ii = 0; ii < ClsCommonCosts.s_ConstructionType.GetLength(i); ii++)
+                    if (nCode == m_ConstructionBaseInfo.ConstructionType)
                     {
-                        if (m_ConstructionBaseInfo.ConstructionType == ClsCommonCosts.s_ConstructionType[i, ii])
+                        ExecNo = (int)FrmCostCalculation.ProcessNo.Process1;
+                        bNRChk = true;
+                        break;
+                    }
+                }
+
+                if (!bNRChk)
+                {
+                    // 公共工事判定（改修）
+                    foreach (int nCode in m_CommonCosts.RepairConstrType)
+                    {
+                        if (nCode == m_ConstructionBaseInfo.ConstructionType)
                         {
-                            ExecNo = i;
-                            bDataExist = true;
+                            ExecNo = (int)FrmCostCalculation.ProcessNo.Process2;
+                            bNRChk = true;
                             break;
                         }
                     }
-                    if (bDataExist) break;
                 }
+
                 return ExecNo;
             }
             catch (Exception ex)
@@ -1790,25 +1829,12 @@
                 if (ExecNo < 0) return;
 
                 bool SelProc = false;
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
                 {
-                    int SecMana = CommonMotions.LoginUserData.SecurityManagement;
-                    if (SecMana == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key
-                        || SecMana == CommonDefine.AdminSecurityManagement) 
-                    {
-                        SelProc = true;
-                    }
+                    SelProc = true;
                 }
-                else
-                {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
-                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
-                    {
-                        SelProc = true;
-                    }
-                }
 
                 if (SelProc)
                 {   // 最高管理者のみ画面表示
@@ -1841,7 +1867,7 @@
             {
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.FieldManage], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.FieldManage], (int)TitleDivision.Group);
 
                 // 現場管理費を取得する
                 double dspFieldval = CalcCommonFieldManage(true);
@@ -1865,12 +1891,14 @@
                 EstimateData DataRec = new EstimateData();
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append(DataDB.CreatePrimarykeyString(m_ConstructionCode));
-                strSQL.AppendFormat(" AND ComponentCode = {0}", ClsCommonCosts.s_FieldManagementCompCode);
+                //strSQL.AppendFormat(" AND ComponentCode = {0}", ClsComCostsStatic.s_FieldManagementCompCode);
+                strSQL.AppendFormat(" AND ComponentCode = {0}", m_CommonCosts.FieldManagementPublic);
                 DataDB.SelectAction(strSQL.ToString(), ref DataRec);
 
                 EstimateBudgetDetail DetailRec = new EstimateBudgetDetail();
-                DetailRec.GroupCount = (int)GroupName_EstimateBudget.FieldManage;                          // グループ番号
-                DetailRec.ComponentCode = ClsCommonCosts.s_FieldManagementCompCode;      // 構成キー
+                DetailRec.GroupCount = (int)GroupName.FieldManage;                          // グループ番号
+                //DetailRec.ComponentCode = ClsComCostsStatic.s_FieldManagementCompCode;      // 構成キー
+                DetailRec.ComponentCode = m_CommonCosts.FieldManagementPublic;            // 構成キー
                 DetailRec.FirstString = DataRec.ItemName;                                   // 構成名称
                 DetailRec.EstimatePrice = DataRec.PriceValue;                               // 見積時金額
                 DetailRec.NegotiationPrice = DataRec.PriceValue;                            // 交渉時金額
@@ -1878,8 +1906,8 @@
                 DisplayGridData(1, DetailRec);
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.FieldManage] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dspFieldval, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.FieldManage);
+                string strDspName = GroupTitle[(int)GroupName.FieldManage] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dspFieldval, 0, (int)TitleDivision.Group, (int)GroupName.FieldManage);
             }
             catch (Exception ex)
             {
@@ -1903,13 +1931,14 @@
             {
                 InsertBlankLine(1);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.FieldManagePileUp], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.FieldManagePileUp], (int)TitleDivision.Group);
 
                 // 積み上げ現場管理費行セット
                 EstimateBudgetDetail Datarec = new EstimateBudgetDetail();
-                Datarec.GroupCount = (int)GroupName_EstimateBudget.FieldManagePileUp;                       // グループ番号
-                Datarec.ComponentCode = ClsCommonCosts.s_CommunityCompCode;                                 // 構成キー
-                Datarec.FirstString = GroupTitle[(int)GroupName_EstimateBudget.FieldManagePileUp].Trim();  // 構成名称
+                Datarec.GroupCount = (int)GroupName.FieldManagePileUp;                       // グループ番号
+                //Datarec.ComponentCode = ClsComCostsStatic.s_CommunityCompCode;                                 // 構成キー
+                Datarec.ComponentCode = m_CommonCosts.CommonTemporyPublic;                    // 構成キー
+                Datarec.FirstString = GroupTitle[(int)GroupName.FieldManagePileUp].Trim();  // 構成名称
 
                 DisplayGridData(1, Datarec);
                 
@@ -1919,8 +1948,8 @@
                 dgvAllDisplay.Rows[iLineCnt].Cells[(int)DispGridColumn.EstimatePrice].ReadOnly = false;
                 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.FieldManagePileUp] + s_TotaFixlName;
-                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.FieldManagePileUp);
+                string strDspName = GroupTitle[(int)GroupName.FieldManagePileUp] + s_TotaFixlName;
+                CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName.FieldManagePileUp);
 
             }
             catch (Exception ex)
@@ -1943,7 +1972,7 @@
 
                 InsertBlankLine(2);
                 // タイトルセット
-                DispTitle(GroupTitle[(int)GroupName_EstimateBudget.UsualManage], (int)TitleDivision.Group);
+                DispTitle(GroupTitle[(int)GroupName.UsualManage], (int)TitleDivision.Group);
 
                 // 一般管理費演算
                 double dspval = CalcCommonUsualManage(true);
@@ -1967,12 +1996,14 @@
                 EstimateData DataRec = new EstimateData();
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append(DataDB.CreatePrimarykeyString(m_ConstructionCode));
-                strSQL.AppendFormat(" AND ComponentCode = {0}", ClsCommonCosts.s_NormalManagementCompCode);
+                //strSQL.AppendFormat(" AND ComponentCode = {0}", ClsComCostsStatic.s_NormalManagementCompCode);
+                strSQL.AppendFormat(" AND ComponentCode = {0}", m_CommonCosts.NormalManagementPublic);
                 DataDB.SelectAction(strSQL.ToString(), ref DataRec);
 
                 EstimateBudgetDetail DetailRec = new EstimateBudgetDetail();
-                DetailRec.GroupCount = (int)GroupName_EstimateBudget.UsualManage;                          // グループ番号
-                DetailRec.ComponentCode = ClsCommonCosts.s_NormalManagementCompCode;     // 構成キー
+                DetailRec.GroupCount = (int)GroupName.UsualManage;                          // グループ番号
+                //DetailRec.ComponentCode = ClsComCostsStatic.s_NormalManagementCompCode;     // 構成キー
+                DetailRec.ComponentCode = m_CommonCosts.NormalManagementPublic;           // 構成キー
                 DetailRec.FirstString = DataRec.ItemName;                                   // 構成名称
                 DetailRec.EstimatePrice = DataRec.PriceValue;                               // 見積時金額
                 DetailRec.NegotiationPrice = DataRec.PriceValue;                            // 交渉時金額
@@ -1980,8 +2011,8 @@
                 DisplayGridData(1, DetailRec);
 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.UsualManage] + s_TotaFixlName;
-                CreateTotalLine(strDspName, dspval, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.UsualManage);
+                string strDspName = GroupTitle[(int)GroupName.UsualManage] + s_TotaFixlName;
+                CreateTotalLine(strDspName, dspval, 0, (int)TitleDivision.Group, (int)GroupName.UsualManage);
 
             }
             catch (Exception ex)
@@ -2019,16 +2050,16 @@
                 m_frmCostCalc.ConstructionTimes = CommonMotions.cnvDouble(m_dispLabelControl[(int)DispControl.ConstructionTime].Text);
 
                 // 直接工事費(外注費と自社施工費を取得する)
-                m_frmCostCalc.Value1 = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.OutSource) + GetGroupTotalFromGrid((int)GroupName_EstimateBudget.MyConstruction);
+                m_frmCostCalc.Value1 = GetGroupTotalFromGrid((int)GroupName.OutSource) + GetGroupTotalFromGrid((int)GroupName.MyConstruction);
 
                 // 積み上げ共通仮設費
-                m_frmCostCalc.Value2 = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonPileUp);
+                m_frmCostCalc.Value2 = GetGroupTotalFromGrid((int)GroupName.CommonPileUp);
                 
                 // 積み上げ現場管理費
-                m_frmCostCalc.Value3 = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.FieldManagePileUp);
+                m_frmCostCalc.Value3 = GetGroupTotalFromGrid((int)GroupName.FieldManagePileUp);
 
                 // 発生剤処分費
-                m_frmCostCalc.Value4 = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.Dispose);
+                m_frmCostCalc.Value4 = GetGroupTotalFromGrid((int)GroupName.Dispose);
 
                 // タスクバー表示無
                 //m_frmCostCalc.ShowInTaskbar = false;
@@ -2191,8 +2222,8 @@
                 else
                     radioButton2.Checked = true;
                 
-                double dTotal = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.OutSource);
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.MyConstruction);
+                double dTotal = GetGroupTotalFromGrid((int)GroupName.OutSource);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.MyConstruction);
 
                 // 工期
                 double dCTimes = CommonMotions.cnvDouble(m_dispLabelControl[(int)DispControl.ConstructionTime].Text);
@@ -2243,12 +2274,12 @@
                     radioButton2.Checked = true;
 
                 // 外注費と自社施工費を取得する
-                double dTotal = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.OutSource);
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.MyConstruction);
+                double dTotal = GetGroupTotalFromGrid((int)GroupName.OutSource);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.MyConstruction);
                 // 共通仮設費を取得する
                 dTotal += CommonMotions.cnvInt(dgvAllDisplay.Rows[m_CommonItemLine].Cells[GetEstimate].Value);
                 // 積み上げ共通仮設費を取得する
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonPileUp);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.CommonPileUp);
 
                 // 工期
                 double dCTimes = CommonMotions.cnvDouble(m_dispLabelControl[(int)DispControl.ConstructionTime].Text);
@@ -2300,16 +2331,16 @@
                     radioButton2.Checked = true;
 
                 // 外注費と自社施工費を取得する
-                double dTotal = GetGroupTotalFromGrid((int)GroupName_EstimateBudget.OutSource);
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.MyConstruction);
+                double dTotal = GetGroupTotalFromGrid((int)GroupName.OutSource);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.MyConstruction);
                 // 共通仮設費を取得する
                 dTotal += CommonMotions.cnvInt(dgvAllDisplay.Rows[m_CommonItemLine].Cells[GetEstimate].Value);
                 // 積み上げ共通仮設費を取得する
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.CommonPileUp);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.CommonPileUp);
                 // 現場管理費を取得する
                 dTotal += CommonMotions.cnvInt(dgvAllDisplay.Rows[m_FieldItemLine].Cells[GetEstimate].Value);
                 // 積み上げ現場管理を取得する
-                dTotal += GetGroupTotalFromGrid((int)GroupName_EstimateBudget.FieldManagePileUp);
+                dTotal += GetGroupTotalFromGrid((int)GroupName.FieldManagePileUp);
 
                 // 工期
                 double dCTimes = CommonMotions.cnvDouble(m_dispLabelControl[(int)DispControl.ConstructionTime].Text);
@@ -2360,7 +2391,7 @@
                     dgv.Rows[m_CommonItemLine].Cells[(int)DispGridColumn.NegotiationPrice].Value = dspCommonval2.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.CommonTemp);
+                    CalcGroupTotal((int)GroupName.CommonTemp);
                 }
 
                 // 現場管理費演算
@@ -2374,7 +2405,7 @@
                     dgv.Rows[m_FieldItemLine].Cells[(int)DispGridColumn.NegotiationPrice].Value = dspFieldval2.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.FieldManage);
+                    CalcGroupTotal((int)GroupName.FieldManage);
                 }
 
                 // 一般管理費演算
@@ -2388,7 +2419,7 @@
                     dgv.Rows[m_UsualItemLine].Cells[(int)DispGridColumn.NegotiationPrice].Value = dspval2.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.UsualManage);
+                    CalcGroupTotal((int)GroupName.UsualManage);
                 }
 
                 // 合計計算処理を行う
@@ -2427,7 +2458,7 @@
                     dgv.Rows[m_CommonItemLine].Cells[(int)DispGridColumn.EstimatePrice].Value = dvalue1.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.CommonTemp);
+                    CalcGroupTotal((int)GroupName.CommonTemp);
                 }
 
                 if (m_FieldItemLine != 0)
@@ -2436,7 +2467,7 @@
                     dgv.Rows[m_FieldItemLine].Cells[(int)DispGridColumn.EstimatePrice].Value = dvalue2.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.FieldManage);
+                    CalcGroupTotal((int)GroupName.FieldManage);
                 }
 
                 if (m_UsualItemLine != 0)
@@ -2445,7 +2476,7 @@
                     dgv.Rows[m_UsualItemLine].Cells[(int)DispGridColumn.EstimatePrice].Value = dvalue3.ToString("#,0");
 
                     // 小計セット
-                    CalcGroupTotal((int)GroupName_EstimateBudget.UsualManage);
+                    CalcGroupTotal((int)GroupName.UsualManage);
                 }
 
                 // 合計計算処理を行う
@@ -2748,7 +2779,7 @@
                     if (!CommonMotions.chkNumeric(wrkRow.Cells[(int)DispGridColumn.EstimatePrice].Value))
                     {
                         // 購入品は予算金額がない
-                        if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) != (int)GroupName_EstimateBudget.PurchasePrice)
+                        if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) != (int)GroupName.PurchasePrice)
                         {
                             ErrorRowl = wrkRow.Index;
                             bAns = false;
@@ -2786,55 +2817,55 @@
         /// <summary>
         /// 共通費を画面より取得する
         /// </summary>
-        private void GetCommonValue(ref double dvalue1, ref double dvalue2, ref double dvalue3)
-        {
-            IOMComponent CompDB = new IOMComponent();
-            IOMConstructionItem ItemDB = new IOMConstructionItem();
-            try
-            {
-                // 名称取得
-                ConstructionItemMaster ItemRec = new ConstructionItemMaster();
-                string strItem = ItemDB.CreatePrimarykeyString(ClsCommonCosts.s_ComputationCommonTempory);
-                ItemDB.SelectAction(strItem, ref ItemRec);
-                // string ItemName = ItemRec.ItemName.Substring(0, ItemRec.ItemName.IndexOf("※") - 1);
-                string ItemName = CommonMotions.ComentSucstring(ItemRec.ItemName, "※");
+        //private void GetCommonValue(ref double dvalue1, ref double dvalue2, ref double dvalue3)
+        //{
+        //    IOMComponent CompDB = new IOMComponent();
+        //    IOMConstructionItem ItemDB = new IOMConstructionItem();
+        //    try
+        //    {
+        //        // 名称取得
+        //        ConstructionItemMaster ItemRec = new ConstructionItemMaster();
+        //        string strItem = ItemDB.CreatePrimarykeyString(ClsCommonCosts.s_ComputationCommonTempory);
+        //        ItemDB.SelectAction(strItem, ref ItemRec);
+        //        // string ItemName = ItemRec.ItemName.Substring(0, ItemRec.ItemName.IndexOf("※") - 1);
+        //        string ItemName = CommonMotions.ComentSucstring(ItemRec.ItemName, "※");
 
-                // 行セット
-                int LineCnt = GetNameToGridLine(ItemName);
-                // データセット
-                dvalue1 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
+        //        // 行セット
+        //        int LineCnt = GetNameToGridLine(ItemName);
+        //        // データセット
+        //        dvalue1 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
 
 
-                // 名称取得
-                ComponentMaster CompRec = new ComponentMaster();
-                string strComp = CompDB.CreatePrimarykeyString(ClsCommonCosts.s_FieldManagementCompCode);
-                CompDB.SelectAction(strComp, ref CompRec);
+        //        // 名称取得
+        //        ComponentMaster CompRec = new ComponentMaster();
+        //        string strComp = CompDB.CreatePrimarykeyString(ClsCommonCosts.s_FieldManagementCompCode);
+        //        CompDB.SelectAction(strComp, ref CompRec);
 
-                // 行セット
-                LineCnt = GetNameToGridLine(CompRec.ComponentName);
-                // データセット
-                dvalue2 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
+        //        // 行セット
+        //        LineCnt = GetNameToGridLine(CompRec.ComponentName);
+        //        // データセット
+        //        dvalue2 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
 
-                // 名称取得
-                strComp = CompDB.CreatePrimarykeyString(ClsCommonCosts.s_NormalManagementCompCode);
-                CompDB.SelectAction(strComp, ref CompRec);
+        //        // 名称取得
+        //        strComp = CompDB.CreatePrimarykeyString(ClsCommonCosts.s_NormalManagementCompCode);
+        //        CompDB.SelectAction(strComp, ref CompRec);
 
-                // 行セット
-                LineCnt = GetNameToGridLine(CompRec.ComponentName);
-                // データセット
-                dvalue3 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // ハンドルクリア
-                CompDB.close(); CompDB = null;
-                ItemDB.close(); ItemDB = null;
-            }
-        }
+        //        // 行セット
+        //        LineCnt = GetNameToGridLine(CompRec.ComponentName);
+        //        // データセット
+        //        dvalue3 = CommonMotions.cnvDouble(dgvAllDisplay.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value);
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //    finally
+        //    {
+        //        // ハンドルクリア
+        //        CompDB.close(); CompDB = null;
+        //        ItemDB.close(); ItemDB = null;
+        //    }
+        //}
         #endregion
 
         #region 積算予算書データ登録
@@ -3142,7 +3173,7 @@
                     switch (GroupNo)
                     {
                         /// 外注費
-                        case (int)GroupName_EstimateBudget.OutSource:
+                        case (int)GroupName.OutSource:
                             // 会社コード
                             if (wrkRec.CompanyCode == para2)
                             {
@@ -3151,26 +3182,28 @@
                             }
                             break;
                         /// 自社施工費
-                        case (int)GroupName_EstimateBudget.MyConstruction:
+                        case (int)GroupName.MyConstruction:
                         /// 共通費
-                        case (int)GroupName_EstimateBudget.CommonTemp:
+                        case (int)GroupName.CommonTemp:
                         /// 共通仮設算定費
-                        case (int)GroupName_EstimateBudget.CommonTempCalcCosts:
+                        case (int)GroupName.CommonTempCalcCosts:
                         /// 積み上げ共通費
-                        case (int)GroupName_EstimateBudget.CommonPileUp:
+                        case (int)GroupName.CommonPileUp:
                         /// 現場管理費
-                        case (int)GroupName_EstimateBudget.FieldManage:
+                        case (int)GroupName.FieldManage:
                         /// 積み上げ現場管理費
-                        case (int)GroupName_EstimateBudget.FieldManagePileUp:
+                        case (int)GroupName.FieldManagePileUp:
                         /// 一般管理費
-                        case (int)GroupName_EstimateBudget.UsualManage:
+                        case (int)GroupName.UsualManage:
                         /// 購入品
-                        case (int)GroupName_EstimateBudget.PurchasePrice:
+                        case (int)GroupName.PurchasePrice:
                         /// 諸経費
-                        case (int)GroupName_EstimateBudget.Expenss:
+                        case (int)GroupName.Expenss:
                         /// 処分費等
-                        case (int)GroupName_EstimateBudget.Dispose:
-                            if (wrkRec.ComponentCode == para1 && wrkRec.FirstString.Equals(para3.Trim()) && wrkRec.SecondString.Equals(para4.Trim()))
+                        case (int)GroupName.Dispose:
+                            if (wrkRec.ComponentCode == para1
+                                && wrkRec.FirstString.Equals(para3.Trim())
+                                && wrkRec.SecondString.Equals(para4.Trim()))
                             {
                                 GetData = (int)wrkRec.NegotiationPrice;
                                 bBreaksw = true;
@@ -3303,7 +3336,8 @@
                 strSQL.Append(" count(*)");
                 strSQL.Append(" FROM ESTIMATEDATADETAIL A");
                 strSQL.AppendFormat(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);                                     // 対象工事のみ
-                strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", ClsCommonCosts.s_CommunityCompCode);                         // 共通仮設費以外を対象にする
+                //strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", ClsComCostsStatic.s_CommunityCompCode);                         // 共通仮設費以外を対象にする
+                strSQL.AppendFormat(" And A.COMPONENTCODE != {0}", m_CommonCosts.CommonTemporyPublic);                            // 共通仮設費以外を対象にする
                 strSQL.Append(" And A.MYEXPENSESFLG = 0");                                                                      // 経費を除外する
                 strSQL.AppendFormat(" And A.COMPANYCODE != {0}",
                                                     CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key);   // 自社施工・会社割当無を除外する
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs	(revision 352)
@@ -826,6 +826,7 @@
             // 
             // Column03
             // 
+            this.Column03.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             this.Column03.DefaultCellStyle = dataGridViewCellStyle2;
             this.Column03.Frozen = true;
@@ -840,6 +841,7 @@
             this.Column01.HeaderText = "工事コード";
             this.Column01.Name = "Column01";
             this.Column01.ReadOnly = true;
+            this.Column01.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column01.Visible = false;
             // 
             // Column02
@@ -847,6 +849,7 @@
             this.Column02.HeaderText = "ページ番号";
             this.Column02.Name = "Column02";
             this.Column02.ReadOnly = true;
+            this.Column02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column02.Visible = false;
             // 
             // Column04
@@ -854,6 +857,7 @@
             this.Column04.HeaderText = "構成キー";
             this.Column04.Name = "Column04";
             this.Column04.ReadOnly = true;
+            this.Column04.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column04.Visible = false;
             // 
             // Column05
@@ -861,6 +865,7 @@
             this.Column05.HeaderText = "工種キー";
             this.Column05.Name = "Column05";
             this.Column05.ReadOnly = true;
+            this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column05.Visible = false;
             // 
             // Column06
@@ -868,6 +873,7 @@
             this.Column06.HeaderText = "規格・寸法キー";
             this.Column06.Name = "Column06";
             this.Column06.ReadOnly = true;
+            this.Column06.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column06.Visible = false;
             // 
             // Column07
@@ -942,7 +948,6 @@
             // 
             // Column13
             // 
-            this.Column13.Frozen = true;
             this.Column13.HeaderText = "備　考";
             this.Column13.Name = "Column13";
             this.Column13.ReadOnly = true;
@@ -951,20 +956,20 @@
             // 
             // Column1
             // 
-            this.Column1.Frozen = true;
             this.Column1.HeaderText = "経費フラグ";
             this.Column1.Name = "Column1";
             this.Column1.ReadOnly = true;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column1.Visible = false;
             this.Column1.Width = 5;
             // 
             // Column14
             // 
-            this.Column14.Frozen = true;
             this.Column14.HeaderText = "入力フラグ";
             this.Column14.Name = "Column14";
             this.Column14.ReadOnly = true;
             this.Column14.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column14.Visible = false;
             this.Column14.Width = 5;
             // 
@@ -1067,6 +1072,13 @@
         private System.Windows.Forms.Button btnPetition;
         private System.Windows.Forms.Button btnApproval;
         private System.Windows.Forms.Button btnSubConstructor;
+        private System.Windows.Forms.Panel panel3;
+        private System.Windows.Forms.Button btnParent;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblLabel07;
+        private System.Windows.Forms.Button btnRequestPrint;
+        private System.Windows.Forms.ProgressBar PrintProgress;
+        private System.Windows.Forms.Button btnCancel;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
@@ -1082,12 +1094,5 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column14;
-        private System.Windows.Forms.Panel panel3;
-        private System.Windows.Forms.Button btnParent;
-        private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.Label lblLabel07;
-        private System.Windows.Forms.Button btnRequestPrint;
-        private System.Windows.Forms.ProgressBar PrintProgress;
-        private System.Windows.Forms.Button btnCancel;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs	(revision 352)
@@ -192,7 +192,7 @@
                 // 
                 newpage.EntryDGV.AllowUserToAddRows = false;
                 newpage.EntryDGV.AllowUserToDeleteRows = false;
-                newpage.EntryDGV.AllowUserToResizeColumns = false;
+                //newpage.EntryDGV.AllowUserToResizeColumns = false;
                 newpage.EntryDGV.AllowUserToResizeRows = false;
                 newpage.EntryDGV.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
                 | System.Windows.Forms.AnchorStyles.Left)
@@ -280,6 +280,7 @@
                 // 
                 newpage.EntryCellStyle[1].Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
                 newpage.EnrtyTextBoxColumn[(int)GridTotalColumn.LineCount].Frozen = true;
+                newpage.EnrtyTextBoxColumn[(int)GridTotalColumn.LineCount].AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
                 newpage.EnrtyTextBoxColumn[(int)GridTotalColumn.LineCount].DefaultCellStyle = newpage.EntryCellStyle[1];
                 newpage.EnrtyTextBoxColumn[(int)GridTotalColumn.LineCount].HeaderText = "№";
                 newpage.EnrtyTextBoxColumn[(int)GridTotalColumn.LineCount].Name = string.Format("{0}{1}{2}", staticColumnName, (int)GridTotalColumn.LineCount, ipagecnt.ToString());
@@ -436,10 +437,13 @@
                 // CheckBoxColumn1
                 // 
                 if (CotegoryFlg == CommonDefine.TabCotegory.Item)
+                {
+                    newpage.EnrtyCheckBoxColumn[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
                     newpage.EnrtyCheckBoxColumn[0].HeaderText = "小項目登録";
-                newpage.EnrtyCheckBoxColumn[0].Name = staticColumnName + "16" + ipagecnt.ToString();
-                newpage.EnrtyCheckBoxColumn[0].ReadOnly = true;
-                newpage.EnrtyCheckBoxColumn[0].Width = 100;
+                    newpage.EnrtyCheckBoxColumn[0].Name = staticColumnName + "16" + ipagecnt.ToString();
+                    newpage.EnrtyCheckBoxColumn[0].ReadOnly = true;
+                    newpage.EnrtyCheckBoxColumn[0].Width = 100;
+                }
 
                 // 表示更新再開
                 newpage.EntryTab.ResumeLayout(false);
@@ -2502,27 +2506,28 @@
                 DataGridView dgvControl = m_EntryPage[itabCnt].EntryDGV;
 
                 // 最終行判定
-                if (dgvControl.CurrentCell.RowIndex == (dgvControl.Rows.Count - 1))
-                {
-                    bEventStopFlg = true;
-                    // 1行追加
-                    int iLinecnt = dgvControl.Rows.Add();
-                    // クリアデータセット
-                    SetRowClearData(dgvControl, dgvControl.Rows.Count - 1);
+                if (dgvControl.CurrentCell.RowIndex != (dgvControl.Rows.Count - 1)) return;
 
-                    // リナンバリング
-                    if (m_EntryPage[itabCnt].Cotegory == CommonDefine.TabCotegory.Total) LineReNumberingAlphaCharacter(m_EntryPage[0].EntryDGV);
-                    if (m_EntryPage[itabCnt].Cotegory == CommonDefine.TabCotegory.Component)
-                    {   // №再採番
-                        LineReNumbering(m_EntryPage[itabCnt].EntryDGV);
+                bEventStopFlg = true;
+                // 1行追加
+                int iLinecnt = dgvControl.Rows.Add();
+                // クリアデータセット
+                SetRowClearData(dgvControl, dgvControl.Rows.Count - 1);
 
-                        bool CellLock = false;
-                        CellLock = GetComponentCellLock(m_EntryPage[itabCnt].ItemCode, CellLock);
-                        if (!CellLock)
-                        {   // 入力可の時はフラグON
-                            m_EntryPage[itabCnt].EntryDGV.Rows[iLinecnt].Cells[(int)GridComponentColumn.InputFlg].Value = (int)CommonDefine.DirectInput.Input;
-                        }
-                    }
+                // リナンバリング
+                if (m_EntryPage[itabCnt].Cotegory == CommonDefine.TabCotegory.Total)
+                    LineReNumberingAlphaCharacter(m_EntryPage[0].EntryDGV);
+
+                // 大項目以外は以下を処理しない
+                if (m_EntryPage[itabCnt].Cotegory != CommonDefine.TabCotegory.Component) return;
+                // №再採番
+                LineReNumbering(m_EntryPage[itabCnt].EntryDGV);
+
+                bool CellLock = false;
+                CellLock = GetComponentCellLock(m_EntryPage[itabCnt].ItemCode, CellLock);
+                if (!CellLock)
+                {   // 入力可の時はフラグON
+                    m_EntryPage[itabCnt].EntryDGV.Rows[iLinecnt].Cells[(int)GridComponentColumn.InputFlg].Value = (int)CommonDefine.DirectInput.Input;
                 }
             }
             catch (System.Exception ex)
@@ -3941,35 +3946,42 @@
                 int iMoveSize = idifference * 2;
                 foreach (EstimateInputPage wrkPage in m_EntryPage)
                 {
+                    if (bNormal)
+                        // 標準化の場合
+                        wrkPage.EntryDGV.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
+                    else
+                        // 最大化の場合
+                        wrkPage.EntryDGV.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
+
                     // 頁カテゴリ取得
                     CommonDefine.TabCotegory pageCotegory = wrkPage.Cotegory;
                     // -------------- セルサイズ変更
                     if (pageCotegory == CommonDefine.TabCotegory.Total)
                     {   // 総計グリッド
-                        for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
-                        {
-                            if (i != (int)GridItemColumn.ItemName &&
-                                i != (int)GridItemColumn.SpecName &&
-                                i != (int)GridItemColumn.Note) continue;
+                        //for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
+                        //{
+                        //    if (i != (int)GridItemColumn.ItemName &&
+                        //        i != (int)GridItemColumn.SpecName &&
+                        //        i != (int)GridItemColumn.Note) continue;
 
-                            DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
-                            wrkCol.Width = s_PageType1CellSize[i];
-                            wrkCol.Width += idifference;
-                        }
+                        //    DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
+                        //    wrkCol.Width = s_PageType1CellSize[i];
+                        //    wrkCol.Width += idifference;
+                        //}
                     }
                     else if (pageCotegory == CommonDefine.TabCotegory.Component)
                     {   // 構成グリッド
-                        for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
-                        {
-                            if (i != (int)GridItemColumn.ItemName &&
-                                i != (int)GridItemColumn.SpecName &&
-                                i != (int)GridItemColumn.Note &&
-                                i != (int)GridItemColumn.SubConstractorName) continue;
+                        //for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
+                        //{
+                        //    if (i != (int)GridItemColumn.ItemName &&
+                        //        i != (int)GridItemColumn.SpecName &&
+                        //        i != (int)GridItemColumn.Note &&
+                        //        i != (int)GridItemColumn.SubConstractorName) continue;
 
-                            DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
-                            wrkCol.Width = s_PageType2CellSize[i];
-                            wrkCol.Width += idifference;
-                        }
+                        //    DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
+                        //    wrkCol.Width = s_PageType2CellSize[i];
+                        //    wrkCol.Width += idifference;
+                        //}
                         int lblYPoint = wrkPage.EntryLabel[(int)PageLabelCount.Label].Location.Y;
                         wrkPage.EntryLabel[(int)PageLabelCount.Label].Location = new Point((PageTotalLabelPoint[0] + iMoveSize), lblYPoint);
                         wrkPage.EntryLabel[(int)PageLabelCount.Total].Location = new Point((PageTotalLabelPoint[1] + iMoveSize), lblYPoint);
@@ -3976,17 +3988,17 @@
                     }
                     else if (pageCotegory == CommonDefine.TabCotegory.Item)
                     {   // 工種グリッド
-                        for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
-                        {
-                            if (i != (int)GridItemColumn.ItemName &&
-                                i != (int)GridItemColumn.SpecName &&
-                                i != (int)GridItemColumn.Note &&
-                                i != (int)GridItemColumn.SubConstractorName) continue;
+                        //for (int i = 0; i < wrkPage.EntryDGV.Columns.Count; i++)
+                        //{
+                        //    if (i != (int)GridItemColumn.ItemName &&
+                        //        i != (int)GridItemColumn.SpecName &&
+                        //        i != (int)GridItemColumn.Note &&
+                        //        i != (int)GridItemColumn.SubConstractorName) continue;
 
-                            DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
-                            wrkCol.Width = s_PageType2CellSize[i];
-                            wrkCol.Width += idifference;
-                        }
+                        //    DataGridViewColumn wrkCol = wrkPage.EntryDGV.Columns[i];
+                        //    wrkCol.Width = s_PageType2CellSize[i];
+                        //    wrkCol.Width += idifference;
+                        //}
                         int lblYPoint = wrkPage.EntryLabel[(int)PageLabelCount.Label].Location.Y;
                         wrkPage.EntryLabel[(int)PageLabelCount.Label].Location = new Point((PageTotalLabelPoint[0] + iMoveSize), lblYPoint);
                         wrkPage.EntryLabel[(int)PageLabelCount.Total].Location = new Point((PageTotalLabelPoint[1] + iMoveSize), lblYPoint);
@@ -5693,71 +5705,38 @@
         {
             try
             {
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 特別権限
+                int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者権限
+                int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長権限
+
+                // システム権限によってデータアクセスに制限がある
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
                 {
-                    // システム権限によってデータアクセスに制限がある
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                    {
-                        // システム管理者（すべて対象）
-                        return true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // 最高機密管理者（すべて対象）
-                        return true;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                    {
-                        // 統括機密管理者（自書込みコード以外は編集不可）
-                        if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
-                        else return false;
-                    }
-                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                    {
-                        // 機密管理者（自書込みコード以外は編集不可）
-                        if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
-                        else return false;
-                    }
-                    else
-                    {
-                        // 一般ユーザー
-                    }
+                    // システム管理者（すべて対象）
+                    return true;
                 }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
+                {
+                    // 最高機密管理者（すべて対象）
+                    return true;
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)
+                {
+                    // 統括機密管理者（自書込みコード以外は編集不可）
+                    if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
+                    else return false;
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
+                {
+                    // 機密管理者（自書込みコード以外は編集不可）
+                    if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
+                    else return false;
+                }
                 else
                 {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 特別権限
-                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者権限
-                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長権限
+                    // 一般ユーザー
+                }
 
-                    // システム権限によってデータアクセスに制限がある
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
-                    {
-                        // システム管理者（すべて対象）
-                        return true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
-                    {
-                        // 最高機密管理者（すべて対象）
-                        return true;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)
-                    {
-                        // 統括機密管理者（自書込みコード以外は編集不可）
-                        if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
-                        else return false;
-                    }
-                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
-                    {
-                        // 機密管理者（自書込みコード以外は編集不可）
-                        if (personcode == CommonMotions.LoginUserData.PersonCode) return true;
-                        else return false;
-                    }
-                    else
-                    {
-                        // 一般ユーザー
-                    }
-                }
                 return false;
             }
             catch (System.Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs	(revision 352)
@@ -236,10 +236,10 @@
                 strSQL.AppendFormat(" AND (A.PurchaseOrderFlg > {0}", (int)ConstructionLedgerDetail.PurOrderFlgDef.ChangeOld);
                 strSQL.AppendFormat(" AND A.PurchaseOrderFlg != {0})", (int)ConstructionLedgerDetail.PurOrderFlgDef.Making);
 
-                strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 //strSQL.AppendFormat(" AND A.EXECUTIONAMOUNT >= {0})", CommonDefine.s_PrintOutPrice);
                 strSQL.AppendFormat(" AND C.TotalVal >= {0})", CommonDefine.s_PrintOutPrice);
-                strSQL.AppendFormat(" OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat(" OR (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 strSQL.AppendFormat(" AND A.EXECUTIONAMOUNT >= {0}))", CommonDefine.s_PrintOutPricePublic);
 
                 strSQL.Append(" Group by");
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs	(revision 352)
@@ -545,7 +545,7 @@
                 // 対象金額のセット
                 long nPrintOutVal = CommonDefine.s_PrintOutPricePublic;
                 // 公共工事以外は協力業者発注合計が30万以上に注文書を発行する
-                if (nPublicFlg != (int)ConstructionTypeMaster.ConstructionTypeDef.Community)
+                if (nPublicFlg != (int)ConstructionTypeMaster.PublicFlgDef.Community)
                     nPrintOutVal = CommonDefine.s_PrintOutPrice;
 
                 int icnt = OrderDB.SelectMaxSeqNoCount(OrderDB.CreatePrimarykeyString(m_ConstructionCode));
@@ -1223,7 +1223,7 @@
             {
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append(TypeDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionType));
-                strSQL.AppendFormat(" AND PUBLICFLG = {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                strSQL.AppendFormat(" AND PUBLICFLG = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                 ConstructionTypeMaster TypeRec = new ConstructionTypeMaster();
                 if (!TypeDB.SelectAction(strSQL.ToString(), ref TypeRec)) return false;
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 352)
@@ -364,7 +364,7 @@
         {
             try
             {
-                bool bRet =false;
+                bool bRet = false;
 
                 // 総務部所属者のみ注文書を印刷できる
                 if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
@@ -371,26 +371,14 @@
                 {
                     bRet = true;
                 }
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
+
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 特別権限
+                                                                                    // システム管理者・最高機密管理者は全てのデータにデータアクセス出来る
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
                 {
-                    // システム管理者・最高機密管理者は全てのデータにデータアクセス出来る
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        bRet = true;
-                    }
+                    bRet = true;
                 }
-                else
-                {
-                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 特別権限
-                    // システム管理者・最高機密管理者は全てのデータにデータアクセス出来る
-                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
-                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
-                    {
-                        bRet = true;
-                    }
-                }
 
                 return bRet;
             }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(revision 352)
@@ -809,73 +809,6 @@
         {
             try
             {
-                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    InitCombBox_OLD();
-                }
-                else
-                {
-                    InitCombBox_NEW();
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �R���{�{�b�N�X�����\���i���j
-        /// <summary>
-        /// �R���{�{�b�N�X�����\���i���j
-        /// </summary>
-        private void InitCombBox_OLD()
-        {
-            try
-            {
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key
-                || CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                    // �����������҂͑S�Č�����
-
-                    // �����E�S���҃R���{�\��
-                    DispAllCombBoxControl(true);
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // ������
-                    // �����R���{��\��
-                    NonDispDepCombBox();
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    // �����E�S���҃R���{��\��
-                    DispAllCombBoxControl(false);
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �R���{�{�b�N�X�����\���i�V�j
-        /// <summary>
-        /// �R���{�{�b�N�X�����\���i�V�j
-        /// </summary>
-        private void InitCombBox_NEW()
-        {
-            try
-            {
                 int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
                 int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
                 int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SubConstrRegist/FrmSubConstrRegistListAuxiliary.cs	(revision 352)
@@ -561,73 +561,6 @@
         {
             try
             {
-                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    InitCombBox_OLD();
-                }
-                else
-                {
-                    InitCombBox_NEW();
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �R���{�{�b�N�X�����\���i���j
-        /// <summary>
-        /// �R���{�{�b�N�X�����\���i���j
-        /// </summary>
-        private void InitCombBox_OLD()
-        {
-            try
-            {
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key
-                || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key
-                || CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                    // �����������҂͑S�Č�����
-
-                    // �����E�S���҃R���{�\��
-                    DispAllCombBoxControl(true);
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // ������
-                    // �����R���{��\��
-                    NonDispDepCombBox();
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    // �����E�S���҃R���{��\��
-                    DispAllCombBoxControl(false);
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �R���{�{�b�N�X�����\���i�V�j
-        /// <summary>
-        /// �R���{�{�b�N�X�����\���i�V�j
-        /// </summary>
-        private void InitCombBox_NEW()
-        {
-            try
-            {
                 int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
                 int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
                 int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs	(revision 352)
@@ -1001,17 +1001,8 @@
             CommonMotions.RemoveEndMessage("交通費・購入品データ");
 
             bool bSelFlg = false;
-            // 新セキュリティデータ対応済みかを確認する
-            if (CommonMotions.LoginUserData.SecCode == 0)
-            {
-                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
-                if (CommonMotions.LoginUserData.SecurityManagement == User) bSelFlg = true;
-            }
-            else
-            {
-                int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
-                if (CommonMotions.LoginUserSecurity.SecRank == User) bSelFlg = true;
-            }
+            int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
+            if (CommonMotions.LoginUserSecurity.SecRank == User) bSelFlg = true;
 
             // 一般ユーザーは登録後終了する
             if (bSelFlg)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 352)
@@ -1476,19 +1476,10 @@
             try
             {
                 bool bSelFlg = false;
-                // 新セキュリティデータ対応済みかを確認する
-                if (CommonMotions.LoginUserData.SecCode == 0)
-                {
-                    // 一般ユーザー
-                    int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
-                    if (CommonMotions.LoginUserData.SecurityManagement != User) bSelFlg = true;
-                }
-                else
-                {
-                    // 一般ユーザー
-                    int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
-                    if (CommonMotions.LoginUserSecurity.SecRank != User) bSelFlg = true;
-                }
+                // 一般ユーザー
+                int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
+                if (CommonMotions.LoginUserSecurity.SecRank != User) bSelFlg = true;
+
                 if (bSelFlg)
                 {
                     if (CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue) == 0)
@@ -1497,7 +1488,7 @@
                         return false;
                     }
                 }
-                    
+
                 // 全タブを対象に処理を行う
                 for (int i = (int)InputTabCount.Transport; i <= (int)InputTabCount.DisposalCost; i++)
                 {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalDisp.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalDisp.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalDisp.designer.cs	(revision 352)
@@ -96,7 +96,6 @@
             // 
             this.dgvProcess.AllowUserToAddRows = false;
             this.dgvProcess.AllowUserToDeleteRows = false;
-            this.dgvProcess.AllowUserToResizeColumns = false;
             this.dgvProcess.AllowUserToResizeRows = false;
             dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
             this.dgvProcess.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
@@ -103,6 +102,7 @@
             this.dgvProcess.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvProcess.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
             this.dgvProcess.BackgroundColor = System.Drawing.Color.White;
             this.dgvProcess.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.BottomCenter;
@@ -135,6 +135,7 @@
             // 
             // Column1
             // 
+            this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle3.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
@@ -163,10 +164,10 @@
             this.Column2.ReadOnly = true;
             this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column2.Visible = false;
-            this.Column2.Width = 60;
             // 
             // Column3
             // 
+            this.Column3.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
             dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
             this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
@@ -209,11 +210,11 @@
         private System.Windows.Forms.Button btnEnd;
         private System.Windows.Forms.Label label1;
         private DataGridViewEX dgvProcess;
+        private System.Windows.Forms.Label lblLastAppColor;
+        private System.Windows.Forms.Label label3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
-        private System.Windows.Forms.Label lblLastAppColor;
-        private System.Windows.Forms.Label label3;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.Designer.cs	(revision 352)
@@ -0,0 +1,426 @@
+﻿namespace ProcessManagement.Forms.Master
+{
+    partial class FrmBudgetItem
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle 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.label1 = new System.Windows.Forms.Label();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnDataSelect = new System.Windows.Forms.Button();
+            this.btnAdd = new System.Windows.Forms.Button();
+            this.btnDel = new System.Windows.Forms.Button();
+            this.LblTitle = new System.Windows.Forms.Label();
+            this.cmbSelectData = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.dgvEdit = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dgvList = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEdit)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvList)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            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(362, 13);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(500, 20);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "公 共 工 事 予 算 書 集 計 単 位 登 録 画 面";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.BackColor = System.Drawing.Color.Green;
+            this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.White;
+            this.btnDataEntry.Location = new System.Drawing.Point(838, 650);
+            this.btnDataEntry.Margin = new System.Windows.Forms.Padding(4);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 20;
+            this.btnDataEntry.Text = "内容登録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1090, 650);
+            this.btnEnd.Margin = new System.Windows.Forms.Padding(4);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 21;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // btnDataSelect
+            // 
+            this.btnDataSelect.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnDataSelect.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataSelect.ForeColor = System.Drawing.Color.Black;
+            this.btnDataSelect.Location = new System.Drawing.Point(300, 650);
+            this.btnDataSelect.Name = "btnDataSelect";
+            this.btnDataSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnDataSelect.TabIndex = 23;
+            this.btnDataSelect.TabStop = false;
+            this.btnDataSelect.Text = "選　択";
+            this.btnDataSelect.UseVisualStyleBackColor = false;
+            this.btnDataSelect.Click += new System.EventHandler(this.btnDataSelect_Click);
+            // 
+            // btnAdd
+            // 
+            this.btnAdd.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.btnAdd.BackColor = System.Drawing.Color.Green;
+            this.btnAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAdd.ForeColor = System.Drawing.Color.White;
+            this.btnAdd.Location = new System.Drawing.Point(928, 393);
+            this.btnAdd.Name = "btnAdd";
+            this.btnAdd.Size = new System.Drawing.Size(139, 29);
+            this.btnAdd.TabIndex = 34;
+            this.btnAdd.TabStop = false;
+            this.btnAdd.Text = "追　加";
+            this.btnAdd.UseVisualStyleBackColor = false;
+            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
+            // 
+            // btnDel
+            // 
+            this.btnDel.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.btnDel.BackColor = System.Drawing.Color.Red;
+            this.btnDel.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDel.ForeColor = System.Drawing.Color.White;
+            this.btnDel.Location = new System.Drawing.Point(1073, 393);
+            this.btnDel.Name = "btnDel";
+            this.btnDel.Size = new System.Drawing.Size(139, 29);
+            this.btnDel.TabIndex = 35;
+            this.btnDel.TabStop = false;
+            this.btnDel.Text = "削　除";
+            this.btnDel.UseVisualStyleBackColor = false;
+            this.btnDel.Click += new System.EventHandler(this.btnDel_Click);
+            // 
+            // LblTitle
+            // 
+            this.LblTitle.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.LblTitle.BackColor = System.Drawing.Color.White;
+            this.LblTitle.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.LblTitle.ForeColor = System.Drawing.Color.Black;
+            this.LblTitle.Location = new System.Drawing.Point(632, 60);
+            this.LblTitle.Name = "LblTitle";
+            this.LblTitle.Size = new System.Drawing.Size(580, 25);
+            this.LblTitle.TabIndex = 36;
+            this.LblTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbSelectData
+            // 
+            this.cmbSelectData.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.cmbSelectData.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbSelectData.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbSelectData.FormattingEnabled = true;
+            this.cmbSelectData.Location = new System.Drawing.Point(632, 361);
+            this.cmbSelectData.Name = "cmbSelectData";
+            this.cmbSelectData.Size = new System.Drawing.Size(580, 24);
+            this.cmbSelectData.TabIndex = 37;
+            // 
+            // dgvEdit
+            // 
+            this.dgvEdit.AllowUserToAddRows = false;
+            this.dgvEdit.AllowUserToDeleteRows = false;
+            this.dgvEdit.AllowUserToResizeColumns = false;
+            this.dgvEdit.AllowUserToResizeRows = false;
+            this.dgvEdit.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvEdit.BackgroundColor = System.Drawing.Color.White;
+            this.dgvEdit.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvEdit.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvEdit.ColumnHeadersHeight = 24;
+            this.dgvEdit.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvEdit.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column7,
+            this.Column8,
+            this.Column9,
+            this.Column10,
+            this.Column11,
+            this.Column12});
+            this.dgvEdit.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvEdit.Location = new System.Drawing.Point(632, 109);
+            this.dgvEdit.MultiSelect = false;
+            this.dgvEdit.Name = "dgvEdit";
+            this.dgvEdit.RowHeadersVisible = false;
+            this.dgvEdit.RowHeadersWidth = 20;
+            this.dgvEdit.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvEdit.RowTemplate.Height = 24;
+            this.dgvEdit.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvEdit.Size = new System.Drawing.Size(580, 244);
+            this.dgvEdit.TabIndex = 24;
+            this.dgvEdit.TabStop = false;
+            // 
+            // Column7
+            // 
+            this.Column7.HeaderText = "ブロック番号";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.Visible = false;
+            // 
+            // Column8
+            // 
+            this.Column8.HeaderText = "グループ番号";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.Visible = false;
+            // 
+            // Column9
+            // 
+            this.Column9.HeaderText = "構成番号";
+            this.Column9.Name = "Column9";
+            this.Column9.ReadOnly = true;
+            this.Column9.Visible = false;
+            // 
+            // Column10
+            // 
+            this.Column10.HeaderText = "工種番号";
+            this.Column10.Name = "Column10";
+            this.Column10.ReadOnly = true;
+            this.Column10.Visible = false;
+            // 
+            // Column11
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle2;
+            this.Column11.HeaderText = "№";
+            this.Column11.Name = "Column11";
+            this.Column11.ReadOnly = true;
+            this.Column11.Width = 60;
+            // 
+            // Column12
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column12.HeaderText = "";
+            this.Column12.Name = "Column12";
+            this.Column12.ReadOnly = true;
+            this.Column12.Width = 500;
+            // 
+            // dgvList
+            // 
+            this.dgvList.AllowUserToAddRows = false;
+            this.dgvList.AllowUserToDeleteRows = false;
+            this.dgvList.AllowUserToResizeColumns = false;
+            this.dgvList.AllowUserToResizeRows = false;
+            this.dgvList.BackgroundColor = System.Drawing.Color.White;
+            this.dgvList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
+            this.dgvList.ColumnHeadersHeight = 24;
+            this.dgvList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column3,
+            this.Column4,
+            this.Column5,
+            this.Column6,
+            this.Column13});
+            this.dgvList.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
+            this.dgvList.Location = new System.Drawing.Point(8, 60);
+            this.dgvList.Margin = new System.Windows.Forms.Padding(4);
+            this.dgvList.MultiSelect = false;
+            this.dgvList.Name = "dgvList";
+            this.dgvList.RowHeadersVisible = false;
+            this.dgvList.RowHeadersWidth = 20;
+            this.dgvList.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvList.RowTemplate.Height = 20;
+            this.dgvList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvList.Size = new System.Drawing.Size(600, 586);
+            this.dgvList.TabIndex = 22;
+            this.dgvList.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvList_CellDoubleClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Column1.Frozen = true;
+            this.Column1.HeaderText = "№";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 80;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column2.HeaderText = "";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 500;
+            // 
+            // Column3
+            // 
+            this.Column3.HeaderText = "データ区分";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Visible = false;
+            // 
+            // Column4
+            // 
+            this.Column4.HeaderText = "ブロック番号";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Visible = false;
+            // 
+            // Column5
+            // 
+            this.Column5.HeaderText = "グループ番号";
+            this.Column5.Name = "Column5";
+            this.Column5.ReadOnly = true;
+            this.Column5.Visible = false;
+            // 
+            // Column6
+            // 
+            this.Column6.HeaderText = "構成番号";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.Visible = false;
+            // 
+            // Column13
+            // 
+            this.Column13.HeaderText = "工種番号";
+            this.Column13.Name = "Column13";
+            this.Column13.ReadOnly = true;
+            this.Column13.Visible = false;
+            // 
+            // FrmBudgetItem
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.AutoSize = true;
+            this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1220, 687);
+            this.Controls.Add(this.cmbSelectData);
+            this.Controls.Add(this.LblTitle);
+            this.Controls.Add(this.btnAdd);
+            this.Controls.Add(this.btnDel);
+            this.Controls.Add(this.dgvEdit);
+            this.Controls.Add(this.btnDataSelect);
+            this.Controls.Add(this.dgvList);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.label1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.ForeColor = System.Drawing.Color.White;
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "FrmBudgetItem";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmBudgetItem_FormClosing);
+            this.Load += new System.EventHandler(this.FrmBudgetItem_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEdit)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvList)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button btnDataEntry;
+        private System.Windows.Forms.Button btnEnd;
+        private CustomControls.DataGridViewEX dgvList;
+        private System.Windows.Forms.Button btnDataSelect;
+        private CustomControls.DataGridViewEX dgvEdit;
+        private System.Windows.Forms.Button btnAdd;
+        private System.Windows.Forms.Button btnDel;
+        private System.Windows.Forms.Label LblTitle;
+        private CustomControls.ComboBoxEX cmbSelectData;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.cs	(revision 352)
@@ -0,0 +1,492 @@
+﻿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.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//* ------------------ 積算書予算書集計コードマスタメンテ画面 ------------------*
+//  2018/05/07  Ver1.0.0.0      Create Source           
+//
+//* ----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmBudgetItem : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+
+        #region 一覧グリッド表示順番
+        /// <summary>
+        /// 一覧グリッド表示順番
+        /// </summary>
+        private enum DispListCol
+        {
+            DispOrder = 0,
+            NameString,
+            DataType,
+            BlockCode,
+            GroupCode,
+            ComponentCode,
+            ItemCode,
+        }
+        #endregion
+
+        #region 編集グリッド表示順番
+        /// <summary>
+        /// 編集グリッド表示順番
+        /// </summary>
+        private enum DispEditCol
+        {
+            BlockCode = 0,
+            GroupCode,
+            ComponentCode,
+            ItemCode,
+            DispOrder,
+            NameString,
+        }
+        #endregion
+
+        #region 行データタイプ
+        /// <summary>
+        /// 行データタイプ
+        /// </summary>
+        private enum DataTypeDef
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 1:ブロックタイトル
+            /// </summary>
+            BlockTitle,
+            /// <summary>
+            /// 2:グループタイトル
+            /// </summary>
+            GroupTitle,
+            /// <summary>
+            /// 3:データ行（構成）
+            /// </summary>
+            DataRow1,
+            /// <summary>
+            /// 4:データ行（工種）
+            /// </summary>
+            DataRow2,
+        }
+        #endregion
+
+        #region ブロックタイトル
+        /// <summary>
+        /// ブロックタイトル
+        /// </summary>
+        public enum BlockNo
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 公共工事
+            /// </summary>
+            PublicWorks,
+            /// <summary>
+            /// 1:工事費
+            /// </summary>
+            TotalCosts,
+            /// <summary>
+            /// 2:工事価格
+            /// </summary>
+            ConstructionPrice,
+            /// <summary>
+            /// 3:工事原価
+            /// </summary>
+            ConstructionCosts,
+            /// <summary>
+            /// 4:純工事費
+            /// </summary>
+            NetConstruction,
+            /// <summary>
+            /// 5:直接工事費
+            /// </summary>
+            DirectConstruction,
+        }
+        #endregion
+
+        #region ブロックタイトル
+        /// <summary>
+        /// ブロックタイトル
+        /// </summary>
+        private static string[] BlockTitle = new string[] { ""
+                                                            , "　公　共　工　事　　"
+                                                            , "　工　　事　　費　　"
+                                                            , "　工　事　価　格　　"
+                                                            , "　工　事　原　価　　"
+                                                            , "　純　工　事　費　　"
+                                                            , "　直 接 工 事 費　"};
+        #endregion
+
+        #region グループタイトル
+        /// <summary>
+        /// グループタイトル
+        /// </summary>
+        public enum GroupNo
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 1:処分費等
+            /// </summary>
+            Dispose,
+            /// <summary>
+            /// 2:一般管理費
+            /// </summary>
+            UsualManage,
+            /// <summary>
+            /// 3:現場管理費
+            /// </summary>
+            FieldManage,
+            /// <summary>
+            /// 4:共通仮設費
+            /// </summary>
+            CommonTemp,
+            /// <summary>
+            /// 5:解体工事費
+            /// </summary>
+            DemolitionWork,
+            /// <summary>
+            /// 6:建築工事費
+            /// </summary>
+            ConstrWork,
+            /// <summary>
+            /// 7:電気設備工事費
+            /// </summary>
+            ElectricalWork,
+            /// <summary>
+            /// 8:機械設備工事費
+            /// </summary>
+            MachineryWork,
+        }
+        #endregion
+
+        #region グループタイトル
+        /// <summary>
+        /// グループタイトル
+        /// </summary>
+        private static string[] GroupTitle = new string[] { ""
+                                                            , "発 生 材 処 分 費 等"
+                                                            , "一　般　管　理　費"
+                                                            , "現　場　管　理　費"
+                                                            , "共　通　仮　設　費"
+                                                            , "解　体　工　事　費"
+                                                            , "建　築　工　事　費"
+                                                            , "電 気 設 備 工 事 費"
+                                                            , "機 械 設 備 工 事 費"};
+        #endregion
+
+        #region 背景色定義
+        /// <summary>
+        /// データ背景色定義
+        /// </summary>
+        private Color[] DataBackColors = new Color[] { Color.White, Color.BurlyWood, Color.LightGray, Color.LightYellow, Color.Linen };
+        private enum DataExistsDef
+        {
+            /// <summary>
+            /// 通常データ
+            /// </summary>
+            OnExists = 0,
+            /// <summary>
+            /// 入力不可データ
+            /// </summary>
+            NotExists,
+        }
+        /// <summary>
+        /// データ表示色定義
+        /// </summary>
+        private Color[] DataForekColors = new Color[] { Color.Black, Color.Gray };
+        #endregion
+
+        #region 新築・改修文字列
+        /// <summary>
+        /// 新築・改修文字列
+        /// </summary>
+        private static string[] strRepair = new string[] { "新築", "改修" };
+        #endregion
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// データ変更フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        public FrmBudgetItem()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmBudgetItem()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ×ボタン押下処理
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region 終了ボタンクリック
+        /// <summary>
+        /// 終了ボタンクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region 初期フォームロード
+        /// <summary>
+        /// 初期フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 初期表示
+            DispGridData();
+
+            // フィールドロック
+            ControlLock(false);
+
+            m_bChengeAns = false;
+        }
+        #endregion
+
+        #region フィールド値変更フラグ
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        #region 登録ボタン押下
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                // データ登録
+                if (!DataEntry()) return;
+
+                CommonMotions.EntryEndMessage("予算書集計コードマスタ");
+
+                // 更新エリアクリア
+                ClearDispEditArea();
+
+                // 初期表示
+                DispGridData();
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 削除ボタン押下
+        /// <summary>
+        /// 削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataDelete_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                // データ削除処理
+                //if (!RemoveData()) return;
+
+                CommonMotions.RemoveEndMessage("積算書予算書集計コードマスタ");
+
+                // 更新エリアクリア
+                ClearDispEditArea();
+
+                // 初期表示
+                DispGridData();
+
+                // フィールドロック
+                ControlLock(false);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region Entryキーでの移動処理
+        /// <summary>
+        /// Entryキーでの移動処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_KeyDown(object sender, KeyEventArgs e)
+        {
+            //Enterキーが押されているか確認
+            //AltかCtrlキーが押されている時は無視する
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //あたかもTabキーが押されたかのようにする
+                //Shiftが押されている時は前のコントロールのフォーカスを移動
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0以降
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+        #region 一覧リストダブルクリック
+        /// <summary>
+        /// 一覧リストダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvList_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // 編集データ表示処理
+            DispEditData();
+        }
+        #endregion
+
+        #region 行追加ボタン押下
+        /// <summary>
+        /// 行追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAdd_Click(object sender, EventArgs e)
+        {
+            // 行データの追加
+            AddRowData();
+        }
+        #endregion
+
+        #region 行削除ボタン押下
+        /// <summary>
+        /// 行削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDel_Click(object sender, EventArgs e)
+        {
+            // 行データの削除
+            DelRowData();
+        }
+        #endregion
+
+        #region データ選択ボタン押下
+        /// <summary>
+        /// データ選択ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataSelect_Click(object sender, EventArgs e)
+        {
+            // 編集データ表示処理
+            DispEditData();
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItem.resx	(revision 352)
@@ -0,0 +1,159 @@
+﻿<?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="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column11.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column1.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="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column13.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/Master/BudgetItem/FrmBudgetItemAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItemAux.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/FrmBudgetItemAux.cs	(revision 352)
@@ -0,0 +1,941 @@
+﻿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 System.Linq;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmBudgetItem
+    {
+
+        #region 画面ロック
+        /// <summary>
+        /// 画面ロック
+        /// </summary>
+        private void ControlLock(bool bctrl = true)
+        {
+            try
+            {
+                cmbSelectData.Enabled = bctrl;
+                btnAdd.Enabled = bctrl;
+                btnDel.Enabled = bctrl;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 画面クリア
+        /// <summary>
+        /// 画面クリア
+        /// </summary>
+        private void ClearDispEditArea()
+        {
+            try
+            {
+                LblTitle.Text = string.Empty;
+                LblTitle.BackColor = DataBackColors[(int)DataTypeDef.Empty];
+                dgvEdit.Rows.Clear();
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                // フィールドロック
+                ControlLock(false);
+
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 取得データ並び
+        /// <summary>
+        /// 取得データ並び
+        /// </summary>
+        private enum GetData
+        {
+            BlockCode = 0,
+            GroupCode,
+            ComponentCode,
+            ItemCode,
+            ElementsName,
+        }
+        #endregion
+
+        #region データ取得SQL作成
+        /// <summary>
+        /// データ取得SQL作成
+        /// </summary>
+        private void CreateGetDataSQL(ref StringBuilder strSQL)
+        {
+            try
+            {
+                // 予算書集計コードマスタ取得SQL作成
+                strSQL.Append("Select");
+                strSQL.Append(" A.BlockCode");
+                strSQL.Append(", A.GroupCode");
+                strSQL.Append(", A.ComponentCode");
+                strSQL.Append(", A.ItemCode");
+                strSQL.Append(", A.ElementsName");
+                strSQL.Append(" From");
+                strSQL.Append(" budgetsumcode As A");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 初期時データ取得
+        /// <summary>
+        /// 初期時データ取得
+        /// </summary>
+        private bool DispGridData()
+        {
+            IOMBudgetSumCode ebcDB = new IOMBudgetSumCode();
+            try
+            {
+                // 予算書集計コードマスタ取得
+                StringBuilder strSQL = new StringBuilder();
+                // データ取得SQL作成
+                CreateGetDataSQL(ref strSQL);
+                strSQL.Append(" Order by A.BlockCode Asc, A.GroupCode Asc");
+
+                ArrayList bscList = new ArrayList();
+                if (!ebcDB.ExecuteReader(strSQL.ToString(), ref bscList)) return false;
+
+                DataGridView dgv = dgvList;
+                dgv.Rows.Clear();
+
+                // 公共工事
+                SetBlkTitleRow((int)BlockNo.PublicWorks);
+                // 公共工事
+                ExistsDataDisp(bscList, (int)BlockNo.PublicWorks, (int)GroupNo.Empty);
+
+                // 工事費
+                SetBlkTitleRow((int)BlockNo.TotalCosts);
+                // 処分費等
+                ExistsDataDisp(bscList, (int)BlockNo.TotalCosts, (int)GroupNo.Dispose);
+
+                // 工事価格
+                SetBlkTitleRow((int)BlockNo.ConstructionPrice);
+                // 一般管理費
+                ExistsDataDisp(bscList, (int)BlockNo.ConstructionPrice, (int)GroupNo.UsualManage);
+
+                // 工事原価
+                SetBlkTitleRow((int)BlockNo.ConstructionCosts);
+                // 現場管理費
+                ExistsDataDisp(bscList, (int)BlockNo.ConstructionCosts, (int)GroupNo.FieldManage);
+
+                // 純工事費
+                SetBlkTitleRow((int)BlockNo.NetConstruction);
+                // 共通仮設費
+                ExistsDataDisp(bscList, (int)BlockNo.NetConstruction, (int)GroupNo.CommonTemp);
+
+                // 直接工事費
+                SetBlkTitleRow((int)BlockNo.DirectConstruction);
+                // 解体工事費
+                ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.DemolitionWork);
+                // 建築工事費
+                ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.ConstrWork);
+                // 電気設備工事費
+                ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.ElectricalWork);
+                // 機械設備工事費
+                ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.MachineryWork);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                ebcDB.close(); ebcDB = null;
+            }
+        }
+        #endregion
+
+        #region ブロックタイトル行セット
+        /// <summary>
+        /// ブロックタイトル行セット
+        /// </summary>
+        private void SetBlkTitleRow(int nBlkCode)
+        {
+                DataGridView dgv = dgvList;
+            try
+            {
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+
+                // ナンバー取得
+                DataGridViewRow[] TargetRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.BlockTitle)
+                                                        .ToArray();
+                int nNo = 1;
+                if (TargetRow.Length > 0) nNo = TargetRow.Length + 1;
+
+                // タイトルセット
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}", nNo);
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = BlockTitle[nBlkCode];
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.BlockTitle;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlkCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = 0;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.ComponentCode].Value = 0;
+
+                // 行色変更
+                dgv.Rows[RowCnt].DefaultCellStyle.BackColor = DataBackColors[(int)DataTypeDef.BlockTitle];
+                dgv.Rows[RowCnt].DefaultCellStyle.ForeColor = DataForekColors[(int)DataExistsDef.OnExists];
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region グループタイトル行セット
+        /// <summary>
+        /// グループタイトル行セット
+        /// </summary>
+        private void SetGrpTitleRow(int nBlkCode, int nGrpCode)
+        {
+            try
+            {
+                DataGridView dgv = dgvList;
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+
+                // ナンバー取得
+                DataGridViewRow[] BlkRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.BlockCode].Value) == nBlkCode
+                                                        && CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.BlockTitle)
+                                                        .ToArray();
+
+                DataGridViewRow[] GrpRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.BlockCode].Value) == nBlkCode
+                                                        && CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.GroupTitle)
+                                                        .ToArray();
+                int nBLkNo = CommonMotions.cnvInt(BlkRow[0].Cells[(int)DispListCol.DispOrder].Value);
+                int nNo = 1;
+                if (GrpRow.Length > 0) nNo = GrpRow.Length + 1;
+
+                // タイトルセット
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}-{1}", nBLkNo, nNo);
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = GroupTitle[nGrpCode];
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.GroupTitle;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlkCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = nGrpCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.ComponentCode].Value = 0;
+
+                // 行色変更
+                dgv.Rows[RowCnt].DefaultCellStyle.BackColor = DataBackColors[(int)DataTypeDef.GroupTitle];
+                dgv.Rows[RowCnt].DefaultCellStyle.ForeColor = DataForekColors[(int)DataExistsDef.OnExists];
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 対象工事表示処理
+        /// <summary>
+        /// 対象工事表示処理
+        /// </summary>
+        private void ExistsDataDisp(ArrayList bscList, int nBlockCode, int nGroupCode)
+        {
+            DataGridView dgv = dgvList;
+            try
+            {
+                // タイトルセット
+                if (nGroupCode > (int)GroupNo.Empty) SetGrpTitleRow(nBlockCode, nGroupCode);
+
+                // グループ№取得
+                int nGrpCnt = 1;
+                DataGridViewRow[] GrpRow = dgv.Rows.Cast<DataGridViewRow>()
+                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.BlockCode].Value) == nBlockCode
+                                        && CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.GroupTitle)
+                                        .ToArray();
+                if (GrpRow.Length > 0) nGrpCnt = GrpRow.Length;
+
+                int nCompNo = 1;
+                int nItemNo = 1;
+                int nBlkCode = 0;
+                int nGrpCode = 0;
+                int nCompCode = 0;
+                int nItemCode = 0;
+                foreach (object[] CurRec in bscList)
+                {
+                    nBlkCode = CommonMotions.cnvInt(CurRec[(int)GetData.BlockCode]);
+                    nGrpCode = CommonMotions.cnvInt(CurRec[(int)GetData.GroupCode]);
+                    nCompCode = CommonMotions.cnvInt(CurRec[(int)GetData.ComponentCode]);
+                    nItemCode = CommonMotions.cnvInt(CurRec[(int)GetData.ItemCode]);
+
+                    // 対象行以外は処理しない
+                    if (nBlkCode == nBlockCode && nGrpCode == nGroupCode) { }
+                    else { continue; }
+
+                    // 行追加
+                    int RowCnt = dgv.Rows.Add(1);
+                    int PrevRow = 0;
+                    if (RowCnt > 0) PrevRow= RowCnt - 1;
+
+                    // データセット
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.DataRow1;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlockCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = nGroupCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.ComponentCode].Value = nCompCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.ItemCode].Value = nItemCode;
+
+                    string strConstrName = CommonMotions.cnvString(CurRec[(int)GetData.ElementsName]);
+
+                    if (nGrpCode < 1)
+                    {
+                        int wrk1 = CommonMotions.cnvInt(dgv.Rows[PrevRow].Cells[(int)DispListCol.ComponentCode].Value);
+                        if (wrk1 > 0 && wrk1 != nCompCode) nCompNo++;
+
+                        dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}-{1}", nBlkCode, nCompNo);
+                        // 行色変更
+                        dgv.Rows[RowCnt].DefaultCellStyle.BackColor = DataBackColors[(int)DataTypeDef.DataRow1];
+                    }
+                    else if (nItemCode < 1)
+                    {
+                        int wrk1 = CommonMotions.cnvInt(dgv.Rows[PrevRow].Cells[(int)DispListCol.ComponentCode].Value);
+                        if (wrk1 > 0 && wrk1 != nCompCode) nCompNo++;
+
+                        dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}-{1}-{2}", nBlkCode, nGrpCnt, nCompNo);
+                        // 行色変更
+                        dgv.Rows[RowCnt].DefaultCellStyle.BackColor = DataBackColors[(int)DataTypeDef.DataRow1];
+                    }
+                    else
+                    {
+                        int wrk1 = CommonMotions.cnvInt(dgv.Rows[PrevRow].Cells[(int)DispListCol.ItemCode].Value);
+                        if (wrk1 > 0 && wrk1 != nItemCode) nCompNo++;
+
+                        dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}-{1}-{2}-{3}", nBlkCode, nGrpCnt, nCompNo, nItemNo);
+                        // 行色変更
+                        dgv.Rows[RowCnt].DefaultCellStyle.BackColor = DataBackColors[(int)DataTypeDef.DataRow2];
+                        nItemNo++;
+                    }
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = strConstrName;
+
+                    // 表示文字色セット
+                    dgv.Rows[RowCnt].DefaultCellStyle.ForeColor = DataForekColors[(int)DataExistsDef.OnExists];
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.Empty;
+            }
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            try
+            {
+                DataGridView dgv = dgvEdit;
+
+                if (LblTitle.Text.Length < 1) return false;
+
+                if (dgv.RowCount < 1)
+                {
+                    MessageBox.Show("データが選択されていません。"
+                                        , "登録エラー"
+                                        , MessageBoxButtons.OK
+                                        , MessageBoxIcon.Error);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 予算書集計コードマスタ登録
+        /// <summary>
+        /// 予算書集計コードマスタ登録
+        /// </summary>
+        private bool DataEntry()
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                if (MessageBox.Show("予算書集計コードマスタを更新します、よろしいですか？"
+                                    , "登録確認"
+                                    , MessageBoxButtons.YesNo
+                                    , MessageBoxIcon.Question) != DialogResult.Yes) return false;
+
+                DataGridView dgv = dgvEdit;
+
+                int nBlkNo = 0;
+                int nGrpNo = 0;
+                int nCompNo = 0;
+                List<BudgetSumCode> bscList = new List<BudgetSumCode>();
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    BudgetSumCode wrkRec = new BudgetSumCode();
+
+                    wrkRec.BlockCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.BlockCode].Value);            // ブロック番号
+                    wrkRec.GroupCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.GroupCode].Value);            // グループ番号
+                    wrkRec.ComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.ComponentCode].Value);    // 構成キー
+                    wrkRec.ItemCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.ItemCode].Value);              // 工種キー
+                    wrkRec.ElementsName = CommonMotions.cnvString(CurRow.Cells[(int)DispEditCol.NameString].Value);     // 構成名称
+
+                    nBlkNo = wrkRec.BlockCode;
+                    nGrpNo = wrkRec.GroupCode;
+                    nCompNo = wrkRec.ComponentCode;
+                    bscList.Add(wrkRec);
+                }
+                if (bscList.Count < 1) return true;
+
+                // Transaction
+                bscDB.connect(); bscDB.beginTran();
+
+                StringBuilder strSQL = new StringBuilder();
+
+                // グループ・構成の登録によってセットするコードが違う
+                if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.GroupTitle])
+                {   // グループ単位でデータ削除
+                    strSQL.Append(bscDB.CreatePrimarykeyString(nBlkNo, nGrpNo));
+                    strSQL.Append(" And ItemCode = 0");
+                }
+                else if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.DataRow1])
+                {   // 構成単位でデータ削除
+                    strSQL.Append(bscDB.CreatePrimarykeyString(nBlkNo, nGrpNo, nCompNo));
+                    strSQL.Append(" And ItemCode > 0");
+                }
+                // データ削除
+                bscDB.DeleteAction(strSQL.ToString(), false);
+
+                // 一括登録
+                if (!bscDB.InsertAction(bscList, false))
+                {
+                    bscDB.rollback();
+                    MessageBox.Show("予算書集計コードマスタ登録エラーです。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                bscDB.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 編集データ表示処理
+        /// <summary>
+        /// 編集データ表示処理
+        /// </summary>
+        private void DispEditData()
+        {
+            try
+            {
+                // 画面クリア
+                ClearDispEditArea();
+
+                DataGridView dgvL = dgvList;
+                // カレント行取得
+                DataGridViewRow CurRow = dgvL.CurrentRow;
+
+                // ブロック・グループ・構成コードを取得する
+                int nBlkCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispListCol.BlockCode].Value);
+                if (nBlkCode < 1) return;
+
+                int nGrpCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispListCol.GroupCode].Value);
+                if (nGrpCode < 1 && nBlkCode != (int)BlockNo.PublicWorks) return;
+
+                int nCompCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispListCol.ComponentCode].Value);
+                if (nCompCode > 0)
+                {
+                    // 工種編集
+                    EditItem(nBlkCode, nGrpCode, nCompCode);
+                    return;
+                }
+                // アイテムの編集ではない場合は構成を編集する
+                EditComponent(nBlkCode, nGrpCode);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構成編集
+        /// <summary>
+        /// 構成編集
+        /// </summary>
+        /// <returns></returns>
+        private void EditComponent(int nBlkCode, int nGrpCode)
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                DataGridView dgvL = dgvList;
+
+                StringBuilder strSQL = new StringBuilder();
+                // データ取得SQL作成
+                CreateGetDataSQL(ref strSQL);
+                strSQL.Append(bscDB.CreatePrimarykeyString(nBlkCode, nGrpCode));
+                strSQL.Append(" And A.ItemCode = 0");
+                strSQL.Append(" Order by A.BlockCode Asc, A.GroupCode Asc");
+
+                ArrayList bscList = new ArrayList();
+                if (!bscDB.ExecuteReader(strSQL.ToString(), ref bscList)) return;
+
+                // 処理タイトル取得
+                DataGridViewRow TitleRow = dgvL.Rows.Cast<DataGridViewRow>().First(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.GroupCode].Value) == nGrpCode);
+                LblTitle.BackColor = DataBackColors[(int)DataTypeDef.GroupTitle];
+                if (TitleRow != null)
+                    LblTitle.Text = CommonMotions.cnvString(TitleRow.Cells[(int)DispListCol.NameString].Value);
+
+                DataGridView dgvE = dgvEdit;
+
+                int nNo = 0;
+                foreach (object[] CurRec in bscList)
+                {
+                    // 行追加
+                    int RowCnt = dgvE.Rows.Add(1);
+
+                    int nCompCode = CommonMotions.cnvInt(CurRec[(int)GetData.ComponentCode]);
+                    // データセット
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.BlockCode].Value = nBlkCode;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.GroupCode].Value = nGrpCode;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.ComponentCode].Value = nCompCode;
+
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.DispOrder].Value = ++nNo;
+
+                    string strConstrName = CommonMotions.cnvString(CurRec[(int)GetData.ElementsName]);
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.NameString].Value = strConstrName;
+                }
+
+                // 構成項目コンボボックスセット
+                SetcmbSelectDataCompo();
+
+                //// データが登録されていれば入力させない
+                //if (dgvE.RowCount < 1)
+                //{
+                // フィールドロック解除
+                ControlLock(true);
+                //}
+                //else
+                //{
+                //    // フィールドロック
+                //ControlLock(false);
+                //btnDel.Enabled = true;
+                //}
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 工種編集
+        /// <summary>
+        /// 工種編集
+        /// </summary>
+        private void EditItem(int nBlkCode, int nGrpCode, int nCompCode)
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                DataGridView dgvL = dgvList;
+
+                // 共通仮設以外は対象外
+                if (nGrpCode != (int)GroupNo.CommonTemp)
+                {
+                    string strMsg = string.Format("{0}以外は中項目を入力できません。", GroupTitle[(int)GroupNo.CommonTemp].Replace(" ", "").Replace("　", ""));
+                    MessageBox.Show(strMsg
+                                        , "選択エラー"
+                                        , MessageBoxButtons.OK
+                                        , MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 工種行は対象外
+                if (dgvL.CurrentRow.DefaultCellStyle.BackColor == DataBackColors[(int)DataTypeDef.DataRow2])
+                {
+                    MessageBox.Show("中項目より下位の項目は入力できません。"
+                                        , "選択エラー"
+                                        , MessageBoxButtons.OK
+                                        , MessageBoxIcon.Error);
+                    return;
+                }
+
+                StringBuilder strSQL = new StringBuilder();
+                // データ取得SQL作成
+                CreateGetDataSQL(ref strSQL);
+                strSQL.Append(bscDB.CreatePrimarykeyString(nBlkCode, nGrpCode, nCompCode));
+                strSQL.Append(" And A.ItemCode > 0");
+                strSQL.Append(" Order by A.BlockCode Asc, A.GroupCode Asc");
+
+                ArrayList bscList = new ArrayList();
+                if (!bscDB.ExecuteReader(strSQL.ToString(), ref bscList)) return;
+
+                // 処理タイトル取得
+                DataGridViewRow TitleRow = dgvL.Rows.Cast<DataGridViewRow>().First(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.GroupCode].Value) == nGrpCode
+                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispListCol.ComponentCode].Value) == nCompCode);
+                LblTitle.BackColor = DataBackColors[(int)DataTypeDef.DataRow1];
+                if (TitleRow != null)
+                    LblTitle.Text = CommonMotions.cnvString(TitleRow.Cells[(int)DispListCol.NameString].Value);
+
+                DataGridView dgvE = dgvEdit;
+
+                int nNo = 0;
+                foreach (object[] CurRec in bscList)
+                {
+                    // 行追加
+                    int RowCnt = dgvE.Rows.Add(1);
+
+                    int nItemCode = CommonMotions.cnvInt(CurRec[(int)GetData.ItemCode]);
+                    // データセット
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.BlockCode].Value = nBlkCode;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.GroupCode].Value = nGrpCode;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.ComponentCode].Value = nCompCode;
+
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.ItemCode].Value = nItemCode;
+
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.DispOrder].Value = ++nNo;
+
+                    string strConstrName = CommonMotions.cnvString(CurRec[(int)GetData.ElementsName]);
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.NameString].Value = strConstrName;
+                }
+
+                // 工種コンボボックスセット
+                SetcmbSelectDataItem();
+
+                //// データが登録されていれば入力させない
+                //if (dgvE.RowCount < 1)
+                //{
+                // フィールドロック解除
+                ControlLock(true);
+                //}
+                //else
+                //{
+                //// フィールドロック
+                //ControlLock(false);
+                //btnDel.Enabled = true;
+                //}
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 構成項目コンボボックスセット
+        /// <summary>
+        /// 構成項目コンボボックスセット
+        /// </summary>
+        private void SetcmbSelectDataCompo()
+        {
+            IOMComponent compDB = new IOMComponent();
+            try
+            {
+                // 構成項目マスタを検索する
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.AppendFormat(" Where DeleteFlg = {0}", (int)CommonDefine.DataRowDeleteDef.Exists);
+                strSQL.Append(" Order By DisplayOrder Asc, ComponentCode Asc");
+
+                // 構成項目マスタ読込
+                List<ComponentMaster> arList = new List<ComponentMaster>();
+                if (!compDB.SelectAction(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (ComponentMaster work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.ComponentCode, work.ComponentName);
+                    DataList.Add(keyval);
+                }
+
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSelectData, DataList);
+
+                cmbSelectData.SelectedValue = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                compDB.close(); compDB = null;
+            }
+        }
+        #endregion
+
+        #region 工種コンボボックスセット
+        /// <summary>
+        /// 工種コンボボックスセット
+        /// </summary>
+        private void SetcmbSelectDataItem()
+        {
+            IOMConstructionItem ItemDB = new IOMConstructionItem();
+            try
+            {
+                DataGridView dgvL = dgvList;
+                // カレント行取得
+                DataGridViewRow CurRow = dgvL.CurrentRow;
+                int nCompCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispListCol.ComponentCode].Value);
+
+                // 工種マスタを検索する
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.Append("Select");
+                strSQL.Append(" B.ItemCode");
+                strSQL.Append(", B.ItemName");
+                strSQL.Append(" From");
+                strSQL.Append(" Componentlinkmaster As A");
+                strSQL.Append(" Left Join constructionitemmaster As B");
+                strSQL.Append(" On B.ItemCode = A.ItemCode");
+                strSQL.Append(" Where");
+                strSQL.AppendFormat(" A.ComponentCode = {0}", nCompCode);
+                strSQL.AppendFormat(" And B.DeleteFlg = {0}", (int)CommonDefine.DataRowDeleteDef.Exists);
+                strSQL.Append(" Order By B.DisplayOrder");
+
+                // 工種マスタ読込
+                ArrayList arList = new ArrayList();
+                if (!ItemDB.ExecuteReader(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.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]));
+                    DataList.Add(keyval);
+                }
+
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSelectData, DataList);
+
+                cmbSelectData.SelectedValue = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                ItemDB.close(); ItemDB = null;
+            }
+        }
+        #endregion
+
+        #region 行データの追加
+        /// <summary>
+        /// 行データの追加
+        /// </summary>
+        private void AddRowData()
+        {
+            try
+            {
+                DataGridView dgv = dgvEdit;
+
+                //// 2行以上は選択させない
+                //if (dgvEdit.RowCount > 0)
+                //{
+                //    MessageBox.Show("２行以上は選択できません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                //    return;
+                //}
+
+                // 選択エラー
+                int CurrentCode = CommonMotions.cnvInt(cmbSelectData.SelectedValue);
+                if (CurrentCode < 1)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 存在確認
+                DataGridViewRow[] FindRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispEditCol.ComponentCode].Value) == CurrentCode).ToArray();
+                if (FindRow.Count() > 0)
+                {
+                    MessageBox.Show("既に選択されています。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 選択データグループ取得
+                DataGridView dgvL = dgvList;
+                int nBlkCode = CommonMotions.cnvInt(dgvL.CurrentRow.Cells[(int)DispListCol.BlockCode].Value);
+                int nGrpCode = CommonMotions.cnvInt(dgvL.CurrentRow.Cells[(int)DispListCol.GroupCode].Value);
+                int nCompCode = CommonMotions.cnvInt(dgvL.CurrentRow.Cells[(int)DispListCol.ComponentCode].Value);
+
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+                int nNo = dgv.RowCount;
+
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.BlockCode].Value = nBlkCode;
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.GroupCode].Value = nGrpCode;
+                // グループ・構成の登録によってセットするコードが違う
+                if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.GroupTitle])
+                {
+                    dgv.Rows[RowCnt].Cells[(int)DispEditCol.ComponentCode].Value = CurrentCode;
+                }
+                else if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.DataRow1])
+                {
+                    dgv.Rows[RowCnt].Cells[(int)DispEditCol.ComponentCode].Value = nCompCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispEditCol.ItemCode].Value = CurrentCode;
+                }
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.DispOrder].Value = nNo;
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.NameString].Value = CommonMotions.cnvString(cmbSelectData.Text);
+
+                m_bChengeAns = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 行データの削除
+        /// <summary>
+        /// 行データの削除
+        /// </summary>
+        private void DelRowData()
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                DataGridView dgv = dgvEdit;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+
+                // 選択エラー
+                int GrpCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.GroupCode].Value);
+                int CompCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.ComponentCode].Value);
+                if (GrpCode < 1 || CompCode < 1)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 選択確認
+                if (MessageBox.Show("選択された行を削除します。\r\nよろしいでしょうか？", "削除確認",
+                                    MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+                // 行削除
+                int nBlockCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.BlockCode].Value);          // ブロック番号
+                int nGroupCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.GroupCode].Value);          // グループ番号
+                int nComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.ComponentCode].Value);  // 構成キー
+                int nItemCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.ItemCode].Value);            // 工種キー
+
+                bscDB.connect(); bscDB.beginTran();
+
+                StringBuilder strSQL = new StringBuilder();
+                // グループ・構成の登録によってセットするコードが違う
+                if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.GroupTitle])
+                {
+                    strSQL.Append(bscDB.CreatePrimarykeyString(nBlockCode, nGroupCode, nComponentCode));
+                }
+                else if (LblTitle.BackColor == DataBackColors[(int)DataTypeDef.DataRow1])
+                {
+                    strSQL.Append(bscDB.CreatePrimarykeyString(nBlockCode, nGroupCode, nComponentCode, nItemCode));
+                }
+                BudgetSumCode bscRec = new BudgetSumCode();
+                // 存在確認
+                if (bscDB.SelectAction(strSQL.ToString(), ref bscRec, false))
+                {
+                    // 削除
+                    if (!bscDB.DeleteAction(strSQL.ToString(), false))
+                    {
+                        bscDB.rollback();
+                        MessageBox.Show("予算書集計コードマスタ\r\nデータ削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+                }
+
+                bscDB.commit();
+                // 更新エリアクリア
+                ClearDispEditArea();
+
+                // 初期表示
+                DispGridData();
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.cs	(revision 352)
@@ -0,0 +1,449 @@
+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.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//* ------------------ 積算書予算書集計コードマスタメンテ画面 ------------------*
+//  2018/05/07  Ver1.0.0.0      Create Source           
+//
+//* ----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmBudgetItem : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+
+        #region 一覧グリッド表示順番
+        /// <summary>
+        /// 一覧グリッド表示順番
+        /// </summary>
+        private enum DispListCol
+        {
+            DispOrder = 0,
+            NameString,
+            DataType,
+            BlockCode,
+            GroupCode,
+            KeyCode,
+        }
+        #endregion
+
+        #region 編集グリッド表示順番
+        /// <summary>
+        /// 編集グリッド表示順番
+        /// </summary>
+        private enum DispEditCol
+        {
+            BlockCode = 0,
+            GroupCode,
+            KeyCode,
+            DispOrder,
+            NameString,
+        }
+        #endregion
+
+        #region 行データタイプ
+        /// <summary>
+        /// 行データタイプ
+        /// </summary>
+        private enum DataTypeDef
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 1:ブロックタイトル
+            /// </summary>
+            BlockTitle,
+            /// <summary>
+            /// 2:グループタイトル
+            /// </summary>
+            GroupTitle,
+            /// <summary>
+            /// 3:データ行
+            /// </summary>
+            DataRow,
+        }
+        #endregion
+
+        #region ブロックタイトル
+        /// <summary>
+        /// ブロックタイトル
+        /// </summary>
+        private enum BlockNo
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 1:工事費
+            /// </summary>
+            TotalCosts,
+            /// <summary>
+            /// 2:工事価格
+            /// </summary>
+            ConstructionPrice,
+            /// <summary>
+            /// 3:工事原価
+            /// </summary>
+            ConstructionCosts,
+            /// <summary>
+            /// 4:純工事費
+            /// </summary>
+            NetConstruction,
+            /// <summary>
+            /// 5:直接工事費
+            /// </summary>
+            DirectConstruction,
+        }
+        #endregion
+
+        #region グループタイトル
+        /// <summary>
+        /// グループタイトル
+        /// </summary>
+        private enum GroupNo
+        {
+            /// <summary>
+            /// 0:空白
+            /// </summary>
+            Empty = 0,
+            /// <summary>
+            /// 1:共通仮設費
+            /// </summary>
+            CommonTemp,
+            /// <summary>
+            /// 2:解体工事費
+            /// </summary>
+            DemolitionWork,
+            /// <summary>
+            /// 3:建築工事費
+            /// </summary>
+            ConstrWork,
+            /// <summary>
+            /// 4:電気設備工事費
+            /// </summary>
+            ElectricalWork,
+            /// <summary>
+            /// 5:機械設備工事費
+            /// </summary>
+            MachineryWork,
+            /// <summary>
+            /// 6:現場管理費
+            /// </summary>
+            FieldManage,
+            /// <summary>
+            /// 7:一般管理費
+            /// </summary>
+            UsualManage,
+            /// <summary>
+            /// 8:処分費等
+            /// </summary>
+            Dispose,
+        }
+        #endregion
+
+        #region ブロックタイトル
+        /// <summary>
+        /// ブロックタイトル
+        /// </summary>
+        private static string[] BlockTitle = new string[] { ""
+                                                            , "　工　　事　　費　　"
+                                                            , "　工　事　価　格　　"
+                                                            , "　工　事　原　価　　"
+                                                            , "　純　工　事　費　　"
+                                                            , "直　接　工　事　費　"};
+        #endregion
+
+        #region グループタイトル
+        /// <summary>
+        /// グループタイトル
+        /// </summary>
+        private static string[] GroupTitle = new string[] { ""
+                                                            , "共　通　仮　設　費"
+                                                            , "解　体　工　事　費"
+                                                            , "建　築　工　事　費"
+                                                            , "電 気 設 備 工 事 費"
+                                                            , "機 械 設 備 工 事 費"
+                                                            , "現　場　管　理　費"
+                                                            , "一　般　管　理　費"
+                                                            , "発 生 材 処 分 費 等"
+        };
+        #endregion
+
+        #region 新築・改修文字列
+        /// <summary>
+        /// 新築・改修文字列
+        /// </summary>
+        private static string[] strRepair = new string[] { "新築", "改修" };
+        #endregion
+        
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// データ変更フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        public FrmBudgetItem()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmBudgetItem()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ×ボタン押下処理
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region 終了ボタンクリック
+        /// <summary>
+        /// 終了ボタンクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region 初期フォームロード
+        /// <summary>
+        /// 初期フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 初期表示
+            DispGridData();
+
+        }
+        #endregion
+
+        #region フィールド値変更フラグ
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        #region 登録ボタン押下
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                // データ登録
+                if (!DataEntry()) return;
+
+                CommonMotions.EntryEndMessage("予算書集計コードマスタ");
+
+                // 更新エリアクリア
+                ClearDispEditArea();
+
+                // 初期表示
+                DispGridData();
+
+                // フィールドロック
+                ControlLock(false);
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 削除ボタン押下
+        /// <summary>
+        /// 削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataDelete_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                // データ削除処理
+                //if (!RemoveData()) return;
+
+                CommonMotions.RemoveEndMessage("積算書予算書集計コードマスタ");
+
+                // 更新エリアクリア
+                ClearDispEditArea();
+
+                // 初期表示
+                DispGridData();
+
+                // フィールドロック
+                ControlLock(false);
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region Entryキーでの移動処理
+        /// <summary>
+        /// Entryキーでの移動処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmBudgetItem_KeyDown(object sender, KeyEventArgs e)
+        {
+            //Enterキーが押されているか確認
+            //AltかCtrlキーが押されている時は無視する
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //あたかもTabキーが押されたかのようにする
+                //Shiftが押されている時は前のコントロールのフォーカスを移動
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0以降
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+        #region 一覧リストダブルクリック
+        /// <summary>
+        /// 一覧リストダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvList_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // 編集データ表示処理
+            DispEditData();
+        }
+        #endregion
+
+        #region 行追加ボタン押下
+        /// <summary>
+        /// 行追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAdd_Click(object sender, EventArgs e)
+        {
+            // 行データの追加
+            AddRowData();
+        }
+        #endregion
+
+        #region 行削除ボタン押下
+        /// <summary>
+        /// 行削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDel_Click(object sender, EventArgs e)
+        {
+            // 行データの削除
+            DelRowData();
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.designer.cs	(revision 352)
@@ -0,0 +1,411 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.Master
+{
+    partial class FrmBudgetItem
+    {
+        /// <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 dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.btnDataDelete = new System.Windows.Forms.Button();
+            this.LblTitle = new System.Windows.Forms.Label();
+            this.btnAdd = new System.Windows.Forms.Button();
+            this.btnDel = new System.Windows.Forms.Button();
+            this.dgvEdit = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SalaryColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SalaryColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SalaryColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmbSelectData = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.dgvList = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEdit)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvList)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.BackColor = System.Drawing.Color.Green;
+            this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.White;
+            this.btnDataEntry.Location = new System.Drawing.Point(838, 650);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 17;
+            this.btnDataEntry.Text = "内容登録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1090, 650);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 19;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            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(360, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(500, 20);
+            this.label1.TabIndex = 5;
+            this.label1.Text = "予　算　書　集　計　単　位　登　録　画　面";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnDataDelete
+            // 
+            this.btnDataDelete.BackColor = System.Drawing.Color.Red;
+            this.btnDataDelete.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataDelete.ForeColor = System.Drawing.Color.White;
+            this.btnDataDelete.Location = new System.Drawing.Point(964, 650);
+            this.btnDataDelete.Name = "btnDataDelete";
+            this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
+            this.btnDataDelete.TabIndex = 18;
+            this.btnDataDelete.Text = "内容削除";
+            this.btnDataDelete.UseVisualStyleBackColor = false;
+            this.btnDataDelete.Visible = false;
+            this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
+            // 
+            // LblTitle
+            // 
+            this.LblTitle.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.LblTitle.BackColor = System.Drawing.Color.White;
+            this.LblTitle.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.LblTitle.ForeColor = System.Drawing.Color.Black;
+            this.LblTitle.Location = new System.Drawing.Point(633, 60);
+            this.LblTitle.Name = "LblTitle";
+            this.LblTitle.Size = new System.Drawing.Size(570, 30);
+            this.LblTitle.TabIndex = 38;
+            this.LblTitle.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // btnAdd
+            // 
+            this.btnAdd.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.btnAdd.BackColor = System.Drawing.Color.Green;
+            this.btnAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAdd.ForeColor = System.Drawing.Color.White;
+            this.btnAdd.Location = new System.Drawing.Point(919, 336);
+            this.btnAdd.Name = "btnAdd";
+            this.btnAdd.Size = new System.Drawing.Size(139, 29);
+            this.btnAdd.TabIndex = 41;
+            this.btnAdd.TabStop = false;
+            this.btnAdd.Text = "追　加";
+            this.btnAdd.UseVisualStyleBackColor = false;
+            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
+            // 
+            // btnDel
+            // 
+            this.btnDel.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.btnDel.BackColor = System.Drawing.Color.Red;
+            this.btnDel.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDel.ForeColor = System.Drawing.Color.White;
+            this.btnDel.Location = new System.Drawing.Point(1064, 336);
+            this.btnDel.Name = "btnDel";
+            this.btnDel.Size = new System.Drawing.Size(139, 29);
+            this.btnDel.TabIndex = 42;
+            this.btnDel.TabStop = false;
+            this.btnDel.Text = "削　除";
+            this.btnDel.UseVisualStyleBackColor = false;
+            this.btnDel.Click += new System.EventHandler(this.btnDel_Click);
+            // 
+            // dgvEdit
+            // 
+            this.dgvEdit.AllowUserToAddRows = false;
+            this.dgvEdit.AllowUserToDeleteRows = false;
+            this.dgvEdit.AllowUserToResizeColumns = false;
+            this.dgvEdit.AllowUserToResizeRows = false;
+            this.dgvEdit.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvEdit.BackgroundColor = System.Drawing.Color.White;
+            this.dgvEdit.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvEdit.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvEdit.ColumnHeadersHeight = 22;
+            this.dgvEdit.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvEdit.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column7,
+            this.Column5,
+            this.SalaryColumn3,
+            this.SalaryColumn1,
+            this.SalaryColumn2});
+            this.dgvEdit.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvEdit.Location = new System.Drawing.Point(633, 98);
+            this.dgvEdit.MultiSelect = false;
+            this.dgvEdit.Name = "dgvEdit";
+            this.dgvEdit.RowHeadersVisible = false;
+            this.dgvEdit.RowHeadersWidth = 18;
+            this.dgvEdit.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvEdit.RowTemplate.Height = 20;
+            this.dgvEdit.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvEdit.Size = new System.Drawing.Size(570, 200);
+            this.dgvEdit.TabIndex = 37;
+            this.dgvEdit.TabStop = false;
+            // 
+            // Column7
+            // 
+            this.Column7.HeaderText = "ブロック番号";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.Visible = false;
+            // 
+            // Column5
+            // 
+            this.Column5.HeaderText = "グループ番号";
+            this.Column5.Name = "Column5";
+            this.Column5.ReadOnly = true;
+            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column5.Visible = false;
+            // 
+            // SalaryColumn3
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.SalaryColumn3.DefaultCellStyle = dataGridViewCellStyle2;
+            this.SalaryColumn3.HeaderText = "構成キー";
+            this.SalaryColumn3.Name = "SalaryColumn3";
+            this.SalaryColumn3.ReadOnly = true;
+            this.SalaryColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn3.Visible = false;
+            this.SalaryColumn3.Width = 140;
+            // 
+            // SalaryColumn1
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.SalaryColumn1.DefaultCellStyle = dataGridViewCellStyle3;
+            this.SalaryColumn1.HeaderText = "№";
+            this.SalaryColumn1.Name = "SalaryColumn1";
+            this.SalaryColumn1.ReadOnly = true;
+            this.SalaryColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn1.Width = 60;
+            // 
+            // SalaryColumn2
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.SalaryColumn2.DefaultCellStyle = dataGridViewCellStyle4;
+            this.SalaryColumn2.HeaderText = "";
+            this.SalaryColumn2.Name = "SalaryColumn2";
+            this.SalaryColumn2.ReadOnly = true;
+            this.SalaryColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn2.Width = 490;
+            // 
+            // cmbSelectData
+            // 
+            this.cmbSelectData.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.cmbSelectData.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbSelectData.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbSelectData.FormattingEnabled = true;
+            this.cmbSelectData.Location = new System.Drawing.Point(633, 306);
+            this.cmbSelectData.Name = "cmbSelectData";
+            this.cmbSelectData.Size = new System.Drawing.Size(570, 24);
+            this.cmbSelectData.TabIndex = 36;
+            // 
+            // dgvList
+            // 
+            this.dgvList.AllowUserToAddRows = false;
+            this.dgvList.AllowUserToDeleteRows = false;
+            this.dgvList.AllowUserToResizeColumns = false;
+            this.dgvList.AllowUserToResizeRows = false;
+            this.dgvList.BackgroundColor = System.Drawing.Color.White;
+            this.dgvList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgvList.ColumnHeadersHeight = 24;
+            this.dgvList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column3,
+            this.Column8,
+            this.Column6,
+            this.Column4,
+            this.Column2});
+            this.dgvList.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
+            this.dgvList.Location = new System.Drawing.Point(17, 60);
+            this.dgvList.MultiSelect = false;
+            this.dgvList.Name = "dgvList";
+            this.dgvList.RowHeadersVisible = false;
+            this.dgvList.RowHeadersWidth = 20;
+            this.dgvList.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvList.RowTemplate.Height = 24;
+            this.dgvList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvList.Size = new System.Drawing.Size(600, 560);
+            this.dgvList.TabIndex = 20;
+            this.dgvList.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvList_CellDoubleClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column1.Frozen = true;
+            this.Column1.HeaderText = "№";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 60;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Width = 520;
+            // 
+            // Column8
+            // 
+            this.Column8.HeaderText = "データ区分";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.Visible = false;
+            // 
+            // Column6
+            // 
+            this.Column6.HeaderText = "ブロック番号";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.Visible = false;
+            // 
+            // Column4
+            // 
+            this.Column4.HeaderText = "グループ番号";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Visible = false;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle8;
+            this.Column2.HeaderText = "構成番号";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Visible = false;
+            // 
+            // FrmBudgetItem
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1220, 687);
+            this.Controls.Add(this.LblTitle);
+            this.Controls.Add(this.btnAdd);
+            this.Controls.Add(this.btnDel);
+            this.Controls.Add(this.dgvEdit);
+            this.Controls.Add(this.cmbSelectData);
+            this.Controls.Add(this.dgvList);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnDataDelete);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.btnEnd);
+            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.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.Name = "FrmBudgetItem";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmBudgetItem_FormClosing);
+            this.Load += new System.EventHandler(this.FrmBudgetItem_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmBudgetItem_KeyDown);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEdit)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvList)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnDataEntry;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button btnDataDelete;
+        private DataGridViewEX dgvList;
+        private System.Windows.Forms.Label LblTitle;
+        private System.Windows.Forms.Button btnAdd;
+        private System.Windows.Forms.Button btnDel;
+        private DataGridViewEX dgvEdit;
+        private ComboBoxEX cmbSelectData;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItem.resx	(revision 352)
@@ -0,0 +1,153 @@
+<?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="Column7.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>
+  <metadata name="SalaryColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="SalaryColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="SalaryColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <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="Column8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItemAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItemAux.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BudgetItem/Temp/FrmBudgetItemAux.cs	(revision 352)
@@ -0,0 +1,653 @@
+﻿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 System.Linq;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmBudgetItem
+    {
+
+        #region 画面ロック
+        /// <summary>
+        /// 画面ロック
+        /// </summary>
+        private void ControlLock(bool bctrl = true)
+        {
+            try
+            {
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 画面クリア
+        /// <summary>
+        /// 画面クリア
+        /// </summary>
+        private void ClearDispEditArea()
+        {
+            try
+            {
+                LblTitle.Text = string.Empty;
+                dgvEdit.Rows.Clear();
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 取得データ並び
+        /// <summary>
+        /// 取得データ並び
+        /// </summary>
+        private enum GetData
+        {
+            BlockCode = 0,
+            GroupCode,
+            SeqNo,
+            ComponentCode,
+            ComponentName,
+        }
+        #endregion
+
+        #region データ取得SQL作成
+        /// <summary>
+        /// データ取得SQL作成
+        /// </summary>
+        private void CreateGetDataSQL(ref StringBuilder strSQL, int nGrpCode = -1)
+        {
+            try
+            {
+                // 予算書集計コードマスタ取得SQL作成
+                strSQL.Append("Select");
+                strSQL.Append(" A.BlockCode");
+                strSQL.Append(", A.GroupCode");
+                strSQL.Append(", A.ComponentCode");
+                strSQL.Append(", B.ComponentName");
+                strSQL.Append(" From");
+                strSQL.Append(" budgetsumcode As A");
+                strSQL.Append(" Left Join componentmaster As B");
+                strSQL.Append("       On B.ComponentCode = A.ComponentCode");
+
+                // 初期表示一覧以外の場合
+                if (nGrpCode > -1)
+                {
+                    strSQL.AppendFormat(" Where A.GroupCount = {0}", nGrpCode);
+                }
+
+                strSQL.Append(" Order by A.BlockCode Asc, A.GroupCode Asc");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 初期時データ取得
+        /// <summary>
+        /// 初期時データ取得
+        /// </summary>
+        private bool DispGridData()
+        {
+            IOMBudgetSumCode ebcDB = new IOMBudgetSumCode();
+            try
+            {
+                // 予算書集計コードマスタ取得
+                StringBuilder strSQL = new StringBuilder();
+                // データ取得SQL作成
+                CreateGetDataSQL(ref strSQL);
+
+                ArrayList bscList = new ArrayList();
+                if (!ebcDB.ExecuteReader(strSQL.ToString(), ref bscList)) return false;
+
+                DataGridView dgv = dgvList;
+                dgv.Rows.Clear();
+
+                // 工事費
+                SetBlkTitleRow((int)BlockNo.TotalCosts);
+                // 処分費等
+                ExistsDataDisp(bscList, (int)BlockNo.TotalCosts, (int)GroupNo.Dispose);
+
+                // 工事価格
+                SetBlkTitleRow((int)BlockNo.ConstructionPrice);
+                // 一般管理費
+                ExistsDataDisp(bscList, (int)BlockNo.ConstructionPrice, (int)GroupNo.UsualManage);
+
+                // 工事原価
+                SetBlkTitleRow((int)BlockNo.ConstructionCosts);
+                // 現場管理費
+                ExistsDataDisp(bscList, (int)BlockNo.ConstructionCosts, (int)GroupNo.FieldManage);
+
+                // 純工事費
+                SetBlkTitleRow((int)BlockNo.NetConstruction);
+                // 共通仮設費
+                ExistsDataDisp(bscList, (int)BlockNo.NetConstruction, (int)GroupNo.CommonTemp);
+
+                //// 直接工事費
+                //SetBlkTitleRow((int)BlockNo.DirectConstruction);
+                //// 解体工事費
+                //ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.DemolitionWork);
+                //// 建築工事費
+                //ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.ConstrWork);
+                //// 電気設備工事費
+                //ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.ElectricalWork);
+                //// 機械設備工事費
+                //ExistsDataDisp(bscList, (int)BlockNo.DirectConstruction, (int)GroupNo.MachineryWork);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                ebcDB.close(); ebcDB = null;
+            }
+        }
+        #endregion
+
+        #region ブロックタイトル行セット
+        /// <summary>
+        /// ブロックタイトル行セット
+        /// </summary>
+        private void SetBlkTitleRow(int nBlkCode)
+        {
+            try
+            {
+                DataGridView dgv = dgvList;
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+
+                // ナンバー取得
+                DataGridViewRow[] TargetRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.BlockTitle)
+                                                        .ToArray();
+                int nNo = 1;
+                if (TargetRow.Length > 0) nNo = TargetRow.Length + 1;
+
+                // タイトルセット
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = nNo;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = BlockTitle[nBlkCode];
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.BlockTitle;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlkCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = 0;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.KeyCode].Value = 0;
+
+                // タイトル色変更
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    dgv.Rows[RowCnt].Cells[i].Style.BackColor = Color.BurlyWood;
+                    dgv.Rows[RowCnt].Cells[i].Style.ForeColor = Color.Black;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region グループタイトル行セット
+        /// <summary>
+        /// グループタイトル行セット
+        /// </summary>
+        private void SetGrpTitleRow(int nBlockCode, int nGrpCode)
+        {
+            try
+            {
+                DataGridView dgv = dgvList;
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+
+                // ナンバー取得
+                DataGridViewRow[] BlkRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.BlockCode].Value) == nBlockCode
+                                                        && CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.BlockTitle)
+                                                        .ToArray();
+
+                DataGridViewRow[] GrpRow = dgv.Rows.Cast<DataGridViewRow>()
+                                                        .Where(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.BlockCode].Value) == nBlockCode
+                                                        && CommonMotions.cnvInt(x.Cells[(int)DispListCol.DataType].Value) == (int)DataTypeDef.GroupTitle)
+                                                        .ToArray();
+                int nBLkNo = CommonMotions.cnvInt(BlkRow[0].Cells[(int)DispListCol.DispOrder].Value);
+                int nNo = 1;
+                if (GrpRow.Length > 0) nNo = GrpRow.Length + 1;
+
+                // タイトルセット
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DispOrder].Value = string.Format("{0}-{1}", nBLkNo, nNo);
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = GroupTitle[nGrpCode];
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.GroupTitle;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlockCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = nGrpCode;
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.KeyCode].Value = 0;
+
+                // タイトル色変更
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    dgv.Rows[RowCnt].Cells[i].Style.BackColor = Color.LightGray;
+                    dgv.Rows[RowCnt].Cells[i].Style.ForeColor = Color.Black;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 対象工事表示処理
+        /// <summary>
+        /// 対象工事表示処理
+        /// </summary>
+        private void ExistsDataDisp(ArrayList bscList, int nBlockCode, int nGroupCode)
+        {
+            DataGridView dgv = dgvList;
+            try
+            {
+                // タイトルセット
+                SetGrpTitleRow(nBlockCode, nGroupCode);
+
+                foreach (object[] CurRec in bscList)
+                {
+                    int nBlkCnt = CommonMotions.cnvInt(CurRec[(int)GetData.BlockCode]);
+                    int nGrpCnt = CommonMotions.cnvInt(CurRec[(int)GetData.GroupCode]);
+
+                    // 対象行以外は処理しない
+                    if (nBlkCnt != nBlockCode) continue;
+                    if (nGrpCnt != nGroupCode) continue;
+
+                    // 行追加
+                    int RowCnt = dgv.Rows.Add(1);
+
+                    // データセット
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.DataRow;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.BlockCode].Value = nBlockCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.GroupCode].Value = nGroupCode;
+
+                    int nCompCode = -1;
+                    string strConstrName = string.Empty;
+                    nCompCode = CommonMotions.cnvInt(CurRec[(int)GetData.ComponentCode]);
+                    strConstrName = CommonMotions.cnvString(CurRec[(int)GetData.ComponentName]);
+
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.KeyCode].Value = nCompCode;
+                    dgv.Rows[RowCnt].Cells[(int)DispListCol.NameString].Value = strConstrName;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+                dgv.Rows[RowCnt].Cells[(int)DispListCol.DataType].Value = (int)DataTypeDef.Empty;
+            }
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            try
+            {
+
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 予算書集計コードマスタ登録
+        /// <summary>
+        /// 予算書集計コードマスタ登録
+        /// </summary>
+        private bool DataEntry()
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                if (MessageBox.Show("予算書集計コードマスタを更新します、よろしいですか？"
+                                    , "登録確認"
+                                    , MessageBoxButtons.YesNo
+                                    , MessageBoxIcon.Question) != DialogResult.Yes) return false;
+
+                DataGridView dgv = dgvEdit;
+
+                int nGrpNo = 0;
+                List<BudgetSumCode> bscList = new List<BudgetSumCode>();
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    BudgetSumCode wrkRec = new BudgetSumCode();
+
+                    wrkRec.BlockCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.BlockCode].Value);   // ブロック番号
+                    wrkRec.GroupCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.GroupCode].Value);   // グループ番号
+                    wrkRec.ComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.KeyCode].Value);  // 構成キー
+
+                    nGrpNo = wrkRec.GroupCode;
+                    bscList.Add(wrkRec);
+                }
+                if (bscList.Count < 1) return true;
+
+                // Transaction
+                bscDB.connect();bscDB.beginTran();
+
+                StringBuilder strSQL = new StringBuilder();
+                
+                // グループ単位でデータ削除
+                strSQL.Append(bscDB.CreatePrimarykeyString(nGrpNo));
+                bscDB.DeleteAction(strSQL.ToString(), false);
+
+                // 一括登録
+                if(!bscDB.InsertAction(bscList, false))
+                {
+                    bscDB.rollback();
+                    MessageBox.Show("予算書集計コードマスタ登録エラーです。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                bscDB.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 編集データ表示処理
+        /// <summary>
+        /// 編集データ表示処理
+        /// </summary>
+        private void DispEditData()
+        {
+            IOMBudgetSumCode bscDB = new IOMBudgetSumCode();
+            try
+            {
+                // 画面クリア
+                ClearDispEditArea();
+
+                DataGridView dgvL = dgvList;
+                // カレント行取得
+                DataGridViewRow CurRow = dgvL.CurrentRow;
+                int nGrpCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispListCol.GroupCode].Value);
+                if (nGrpCode < 1) return;
+
+                // 処理タイトル取得
+                DataGridViewRow TitleRow = dgvL.Rows.Cast<DataGridViewRow>().First(x => CommonMotions.cnvInt(x.Cells[(int)DispListCol.GroupCode].Value) == nGrpCode);
+                LblTitle.Text = CommonMotions.cnvString(TitleRow.Cells[(int)DispListCol.NameString].Value);
+
+                StringBuilder strSQL = new StringBuilder();
+                // データ取得SQL作成
+                CreateGetDataSQL(ref strSQL, nGrpCode);
+
+                ArrayList bscList = new ArrayList();
+                if (!bscDB.ExecuteReader(strSQL.ToString(), ref bscList)) return;
+
+                DataGridView dgvE = dgvEdit;
+
+                int nNo = 0;
+                foreach (object[] CurRec in bscList)
+                {
+                    // 行追加
+                    int RowCnt = dgvE.Rows.Add(1);
+
+                    // データセット
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.DispOrder].Value = ++nNo;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.GroupCode].Value = nGrpCode;
+                    int nCompCode = -1;
+                    string strConstrName = string.Empty;
+                            nCompCode = CommonMotions.cnvInt(CurRec[(int)GetData.ComponentCode]);
+                            strConstrName = CommonMotions.cnvString(CurRec[(int)GetData.ComponentName]);
+
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.KeyCode].Value = nCompCode;
+                    dgvE.Rows[RowCnt].Cells[(int)DispEditCol.NameString].Value = strConstrName;
+
+                }
+
+                // 構成項目コンボボックスセット
+                    SetcmbSelectDataCompo();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                bscDB.close(); bscDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事種別コンボボックスセット
+        /// <summary>
+        /// 工事種別コンボボックスセット
+        /// </summary>
+        private void SetcmbSelectDataType()
+        {
+            IOMConstructionType typeDB = new IOMConstructionType();
+            try
+            {
+                // 工事種別マスタを検索する
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.AppendFormat(" Where DeleteFlg = {0}", (int)CommonDefine.DataRowDeleteDef.Exists);
+                strSQL.Append(" Order By DisplayOrder Asc, TypeCode Asc");
+
+                // 工事種別マスタ読込
+                List<ConstructionTypeMaster> arList = new List<ConstructionTypeMaster>();
+                if (!typeDB.SelectAction(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (ConstructionTypeMaster work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.TypeCode, work.NameString);
+                    DataList.Add(keyval);
+                }
+
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSelectData, DataList);
+
+                cmbSelectData.SelectedValue = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                typeDB.close(); typeDB = null;
+            }
+        }
+        #endregion
+
+        #region 構成項目コンボボックスセット
+        /// <summary>
+        /// 構成項目コンボボックスセット
+        /// </summary>
+        private void SetcmbSelectDataCompo()
+        {
+            IOMComponent compDB = new IOMComponent();
+            try
+            {
+                // 構成項目マスタを検索する
+                StringBuilder strSQL = new StringBuilder();
+                strSQL.AppendFormat(" Where DeleteFlg = {0}", (int)CommonDefine.DataRowDeleteDef.Exists);
+                strSQL.Append(" Order By DisplayOrder Asc, ComponentCode Asc");
+
+                // 構成項目マスタ読込
+                List<ComponentMaster> arList = new List<ComponentMaster>();
+                if (!compDB.SelectAction(strSQL.ToString(), ref arList)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (ComponentMaster work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.ComponentCode, work.ComponentName);
+                    DataList.Add(keyval);
+                }
+
+                cmbSelectData.DataSource = null;
+                cmbSelectData.Items.Clear();
+                cmbSelectData.Text = "";
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSelectData, DataList);
+
+                cmbSelectData.SelectedValue = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                compDB.close(); compDB = null;
+            }
+        }
+        #endregion
+
+        #region 行データの追加
+        /// <summary>
+        /// 行データの追加
+        /// </summary>
+        private void AddRowData()
+        {
+            try
+            {
+                DataGridView dgv = dgvEdit;
+
+                // 選択エラー
+                int CompCode = CommonMotions.cnvInt(cmbSelectData.SelectedValue);
+                if (CompCode < 1)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 存在確認
+                DataGridViewRow[] FindRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispEditCol.KeyCode].Value) == CompCode).ToArray();
+                if (FindRow.Count() > 0)
+                {
+                    MessageBox.Show("既に選択されています。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 選択データグループ取得
+                DataGridView dgvL = dgvList;
+                int nGrpCode = CommonMotions.cnvInt(dgvL.CurrentRow.Cells[(int)DispEditCol.GroupCode].Value);
+
+                // 行追加
+                int RowCnt = dgv.Rows.Add(1);
+                int nNo = dgv.RowCount;
+
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.DispOrder].Value = nNo;
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.GroupCode].Value = nGrpCode;
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.KeyCode].Value = CompCode;
+                dgv.Rows[RowCnt].Cells[(int)DispEditCol.NameString].Value = CommonMotions.cnvString(cmbSelectData.Text);
+
+                m_bChengeAns = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 行データの削除
+        /// <summary>
+        /// 行データの削除
+        /// </summary>
+        private void DelRowData()
+        {
+            try
+            {
+                DataGridView dgv = dgvEdit;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+
+                // 選択エラー
+                int GrpCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.GroupCode].Value);
+                int CompCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispEditCol.KeyCode].Value);
+                if (GrpCode < 1 || CompCode < 1)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // 選択確認
+                if (MessageBox.Show("選択された行を削除します。\r\nよろしいでしょうか？", "選択確認",
+                                    MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+                // 行削除
+                dgv.Rows.RemoveAt(CurRow.Index);
+
+                // ナンバー更新
+                int nCnt = 0;
+                foreach(DataGridViewRow wrkRow in dgv.Rows)
+                {
+                    wrkRow.Cells[(int)DispEditCol.DispOrder].Value = ++nCnt;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.cs	(revision 352)
@@ -654,12 +654,6 @@
                     lblStaticItemCode.Visible = true;
                     lblItemCode.Visible = true;
                 }
-                // 工事種別グリッドクリア
-                dgvTypeList.Rows.Clear();
-                // 初期行表示
-                dgvTypeList.Rows.Add(8);
-                // グリッドロック
-                dgvTypeList.Enabled = false;
 
                 // コンボボックス初期値セット
                 cmbSubItems.SelectedIndex = -1;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs	(revision 352)
@@ -36,8 +36,6 @@
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
@@ -47,11 +45,6 @@
             this.btnDispDown = new System.Windows.Forms.Button();
             this.btnDispUp = new System.Windows.Forms.Button();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
-            this.dgvTypeList = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column6 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
             this.label6 = new System.Windows.Forms.Label();
             this.lblStaticItemCode = new System.Windows.Forms.Label();
             this.cmbMyExpenses = new System.Windows.Forms.ComboBox();
@@ -72,7 +65,6 @@
             this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.tableLayoutPanel1.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvTypeList)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvWorkList)).BeginInit();
             this.SuspendLayout();
             // 
@@ -189,7 +181,6 @@
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 150F));
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 210F));
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 250F));
-            this.tableLayoutPanel1.Controls.Add(this.dgvTypeList, 0, 5);
             this.tableLayoutPanel1.Controls.Add(this.label6, 0, 4);
             this.tableLayoutPanel1.Controls.Add(this.lblStaticItemCode, 0, 0);
             this.tableLayoutPanel1.Controls.Add(this.cmbMyExpenses, 1, 4);
@@ -202,90 +193,16 @@
             this.tableLayoutPanel1.Controls.Add(this.cmbDirectInput, 1, 3);
             this.tableLayoutPanel1.Location = new System.Drawing.Point(600, 100);
             this.tableLayoutPanel1.Name = "tableLayoutPanel1";
-            this.tableLayoutPanel1.RowCount = 6;
+            this.tableLayoutPanel1.RowCount = 5;
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 200F));
-            this.tableLayoutPanel1.Size = new System.Drawing.Size(610, 375);
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(610, 175);
             this.tableLayoutPanel1.TabIndex = 23;
             // 
-            // dgvTypeList
-            // 
-            this.dgvTypeList.AllowUserToAddRows = false;
-            this.dgvTypeList.AllowUserToDeleteRows = false;
-            this.dgvTypeList.AllowUserToResizeColumns = false;
-            this.dgvTypeList.AllowUserToResizeRows = false;
-            this.dgvTypeList.BackgroundColor = System.Drawing.Color.White;
-            this.dgvTypeList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvTypeList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
-            this.dgvTypeList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvTypeList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.dataGridViewTextBoxColumn1,
-            this.dataGridViewTextBoxColumn2,
-            this.dataGridViewTextBoxColumn3,
-            this.Column6});
-            this.tableLayoutPanel1.SetColumnSpan(this.dgvTypeList, 3);
-            this.dgvTypeList.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
-            this.dgvTypeList.EnableHeadersVisualStyles = false;
-            this.dgvTypeList.Location = new System.Drawing.Point(3, 178);
-            this.dgvTypeList.Name = "dgvTypeList";
-            this.dgvTypeList.RowHeadersVisible = false;
-            this.dgvTypeList.RowHeadersWidth = 20;
-            this.dgvTypeList.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvTypeList.RowTemplate.Height = 20;
-            this.dgvTypeList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
-            this.dgvTypeList.Size = new System.Drawing.Size(600, 185);
-            this.dgvTypeList.TabIndex = 48;
-            this.dgvTypeList.Visible = false;
-            // 
-            // dataGridViewTextBoxColumn1
-            // 
-            this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
-            this.dataGridViewTextBoxColumn1.Frozen = true;
-            this.dataGridViewTextBoxColumn1.HeaderText = "№";
-            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
-            this.dataGridViewTextBoxColumn1.ReadOnly = true;
-            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn1.Width = 60;
-            // 
-            // dataGridViewTextBoxColumn2
-            // 
-            this.dataGridViewTextBoxColumn2.Frozen = true;
-            this.dataGridViewTextBoxColumn2.HeaderText = "種別コード";
-            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
-            this.dataGridViewTextBoxColumn2.ReadOnly = true;
-            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn2.Visible = false;
-            // 
-            // dataGridViewTextBoxColumn3
-            // 
-            this.dataGridViewTextBoxColumn3.Frozen = true;
-            this.dataGridViewTextBoxColumn3.HeaderText = "工事種別";
-            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
-            this.dataGridViewTextBoxColumn3.ReadOnly = true;
-            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn3.Width = 460;
-            // 
-            // Column6
-            // 
-            this.Column6.Frozen = true;
-            this.Column6.HeaderText = "使用";
-            this.Column6.Name = "Column6";
-            this.Column6.Width = 60;
-            // 
             // label6
             // 
             this.label6.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -318,7 +235,7 @@
             this.cmbMyExpenses.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbMyExpenses.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbMyExpenses.FormattingEnabled = true;
-            this.cmbMyExpenses.Location = new System.Drawing.Point(153, 145);
+            this.cmbMyExpenses.Location = new System.Drawing.Point(153, 147);
             this.cmbMyExpenses.Name = "cmbMyExpenses";
             this.cmbMyExpenses.Size = new System.Drawing.Size(200, 24);
             this.cmbMyExpenses.TabIndex = 46;
@@ -380,7 +297,7 @@
             this.cmbSubItems.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbSubItems.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbSubItems.FormattingEnabled = true;
-            this.cmbSubItems.Location = new System.Drawing.Point(153, 75);
+            this.cmbSubItems.Location = new System.Drawing.Point(153, 77);
             this.cmbSubItems.Name = "cmbSubItems";
             this.cmbSubItems.Size = new System.Drawing.Size(200, 24);
             this.cmbSubItems.TabIndex = 2;
@@ -405,7 +322,7 @@
             this.cmbDirectInput.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbDirectInput.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbDirectInput.FormattingEnabled = true;
-            this.cmbDirectInput.Location = new System.Drawing.Point(153, 110);
+            this.cmbDirectInput.Location = new System.Drawing.Point(153, 112);
             this.cmbDirectInput.Name = "cmbDirectInput";
             this.cmbDirectInput.Size = new System.Drawing.Size(200, 24);
             this.cmbDirectInput.TabIndex = 3;
@@ -442,14 +359,14 @@
             this.dgvWorkList.AllowUserToResizeRows = false;
             this.dgvWorkList.BackgroundColor = System.Drawing.Color.White;
             this.dgvWorkList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvWorkList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvWorkList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column0,
@@ -473,9 +390,9 @@
             // Column0
             // 
             this.Column0.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
-            this.Column0.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.Column0.DefaultCellStyle = dataGridViewCellStyle2;
             this.Column0.Frozen = true;
             this.Column0.HeaderText = "№";
             this.Column0.Name = "Column0";
@@ -485,8 +402,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle3;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "構成キー";
             this.Column1.Name = "Column1";
@@ -496,9 +413,9 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle4;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "大項目名称";
             this.Column2.MaxInputLength = 50;
@@ -509,9 +426,9 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "下位";
             this.Column3.Name = "Column3";
@@ -521,10 +438,10 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle8.ForeColor = System.Drawing.Color.Black;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column4.Frozen = true;
             this.Column4.HeaderText = "入力";
             this.Column4.Name = "Column4";
@@ -534,10 +451,10 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle9.ForeColor = System.Drawing.Color.Black;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "経費";
             this.Column5.Name = "Column5";
@@ -577,7 +494,6 @@
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmComponent_KeyDown);
             this.tableLayoutPanel1.ResumeLayout(false);
             this.tableLayoutPanel1.PerformLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvTypeList)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvWorkList)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
@@ -614,10 +530,5 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
-        private DataGridViewEX dgvTypeList;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
-        private System.Windows.Forms.DataGridViewCheckBoxColumn Column6;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.resx	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.resx	(revision 352)
@@ -117,18 +117,6 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
   <metadata name="Column0.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs	(revision 352)
@@ -718,7 +718,7 @@
             IOMComponentLink linkDB = new IOMComponentLink();
             try
             {
-                //// 一括処理なので接続を行う
+                // 一括処理なので接続を行う
                 linkDB.connect(); linkDB.beginTran();
 
                 // まず削除する
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs	(revision 352)
@@ -180,7 +180,7 @@
             this.tableLayoutPanel1.Controls.Add(this.txtInput1, 1, 1);
             this.tableLayoutPanel1.Controls.Add(this.lblItemCode, 1, 0);
             this.tableLayoutPanel1.Controls.Add(this.cmbSubItems, 1, 2);
-            this.tableLayoutPanel1.Location = new System.Drawing.Point(600, 80);
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(600, 100);
             this.tableLayoutPanel1.Name = "tableLayoutPanel1";
             this.tableLayoutPanel1.RowCount = 4;
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
@@ -196,7 +196,7 @@
             this.cmbMyExpenses.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbMyExpenses.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbMyExpenses.FormattingEnabled = true;
-            this.cmbMyExpenses.Location = new System.Drawing.Point(153, 112);
+            this.cmbMyExpenses.Location = new System.Drawing.Point(153, 110);
             this.cmbMyExpenses.Name = "cmbMyExpenses";
             this.cmbMyExpenses.Size = new System.Drawing.Size(200, 24);
             this.cmbMyExpenses.TabIndex = 46;
@@ -283,7 +283,7 @@
             this.cmbSubItems.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbSubItems.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbSubItems.FormattingEnabled = true;
-            this.cmbSubItems.Location = new System.Drawing.Point(153, 77);
+            this.cmbSubItems.Location = new System.Drawing.Point(153, 75);
             this.cmbSubItems.Name = "cmbSubItems";
             this.cmbSubItems.Size = new System.Drawing.Size(200, 24);
             this.cmbSubItems.TabIndex = 2;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs	(revision 352)
@@ -837,7 +837,7 @@
             IOMConstructionSpec csDB = new IOMConstructionSpec();
             try
             {
-                //// 一括処理なので接続を行う
+                // 一括処理なので接続を行う
                 csDB.connect(); csDB.beginTran();
 
                 // 表示順を更新する
@@ -875,7 +875,7 @@
                 // SQL作成
                 string strSQL = csDB.CreatePrimarykeyString(cw.ItemCode, cw.SpecCode);
                 List<ConstructionSpecMaster> csList = new List<ConstructionSpecMaster>();
-                // 名称マスタ取得
+                // 作業マスタ取得
                 if (!csDB.SelectAction(strSQL, ref csList, false))
                 {
                     csDB.rollback();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 352)
@@ -76,15 +76,21 @@
             TypeCode = 0,
             TypeName,
             PublicFlg,
+            RepairFlg,
             EditMode,
             DataSecRank,
         }
 
         /// <summary>
-        /// 下位項目コンボ文字列
+        /// 公共工事コンボ文字列
         /// </summary>
         private static readonly string[] cmbPublicFlgString = new string[] { "その他工事", "公共工事","民間工事" };
 
+        /// <summary>
+        /// 新築・改修コンボ文字列
+        /// </summary>
+        private static readonly string[] cmbRepairFlgString = new string[] { "新築工事", "改修工事" };
+
         #endregion
 
         #region 変数
@@ -199,7 +205,11 @@
 
             // 公共工事コンボボックスセット
             SetPublicFlgCombBox();
+            cmbPublicFlg.SelectedIndexChanged += new EventHandler(cmbPublicFlg_SelectedIndexChanged);
 
+            // 新築・改修コンボボックスセット
+            SetRepairFlgCombBox();
+
             // 選択許可区分コンボボックスセット
             SetSecRankCombBox();
             
@@ -628,6 +638,7 @@
                     lblTypeCode.Visible = true;
                 }
                 cmbPublicFlg.SelectedIndex = -1;
+                cmbRepairFlg.SelectedIndex = -1;
                 cmbDataSecRank.SelectedIndex = -1;
                 m_bChengeAns = false;
                 TypeExpensesVisible(false);
@@ -792,6 +803,7 @@
                 ci.TypeCode = m_TypeCode;
                 ci.NameString = m_dispControl[(int)DispCtrl.TypeName].Text.ToString();
                 ci.PublicFlg = CommonMotions.cnvInt(cmbPublicFlg.SelectedValue);
+                ci.RepairFlg = CommonMotions.cnvInt(cmbRepairFlg.SelectedValue);
                 ci.SecRank = CommonMotions.cnvInt(cmbDataSecRank.SelectedValue);
                 if (radioButton1.Checked) ci.ExpensesLink = 0; else ci.ExpensesLink = 1;
                 ci.DeleteFlg = 0;
@@ -946,13 +958,13 @@
                     // 工事種別を選択
                     switch (work.PublicFlg)
                     {
-                        case (int)ConstructionTypeMaster.ConstructionTypeDef.Other:
+                        case (int)ConstructionTypeMaster.PublicFlgDef.Other:
                             sflg = cmbPublicFlgString[0].Substring(0, 3);
                             break;
-                        case (int)ConstructionTypeMaster.ConstructionTypeDef.Community:
+                        case (int)ConstructionTypeMaster.PublicFlgDef.Community:
                             sflg = cmbPublicFlgString[1].Substring(0, 2);
                             break;
-                        case (int)ConstructionTypeMaster.ConstructionTypeDef.Popular:
+                        case (int)ConstructionTypeMaster.PublicFlgDef.Popular:
                             sflg = cmbPublicFlgString[2].Substring(0, 2);
                             break;
                     }
@@ -1013,6 +1025,7 @@
             {
                 // 画面クリア
                 ClearDisplay();
+                cmbPublicFlg.SelectedIndexChanged -= new EventHandler(cmbPublicFlg_SelectedIndexChanged);
 
                 // 新規時は表示しない
                 if (m_TypeCode == 0) return;
@@ -1028,6 +1041,7 @@
                     m_dispControl[(int)DispCtrl.TypeCode].Text = wrklist[0].TypeCode.ToString();        // 種別コード
                     m_dispControl[(int)DispCtrl.TypeName].Text = wrklist[0].NameString.ToString();      // 種別名称
                     cmbPublicFlg.SelectedValue = wrklist[0].PublicFlg;                                  // 工事種別
+                    cmbRepairFlg.SelectedValue = wrklist[0].RepairFlg;                                  // 新築・改修区分
                     cmbDataSecRank.SelectedValue = wrklist[0].SecRank;                                  // 選択機密区分
                     if (wrklist[0].ExpensesLink == 0)
                     {
@@ -1050,6 +1064,16 @@
                         m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;               // 修正
                 }
 
+                // 公共工事以外は入力させない
+                if (CommonMotions.cnvInt(cmbPublicFlg.SelectedValue) == (int)ConstructionTypeMaster.PublicFlgDef.Community)
+                {
+                    cmbRepairFlg.Enabled = true;
+                }
+                else
+                {
+                    cmbRepairFlg.Enabled = false;
+                }
+
                 // 参照時はデータ変更させない
                 if (m_EditLock)
                 {
@@ -1064,8 +1088,8 @@
             }
             finally
             {
-                typeDB.close();
-                typeDB = null;
+                typeDB.close(); typeDB = null;
+                cmbPublicFlg.SelectedIndexChanged += new EventHandler(cmbPublicFlg_SelectedIndexChanged);
             }
         }
         #endregion
@@ -1152,6 +1176,34 @@
         }
         #endregion
 
+        #region 新築・改修コンボボックスセット
+        /// <summary>
+        /// 新築・改修コンボボックスセット
+        /// </summary>
+        private void SetRepairFlgCombBox()
+        {
+            try
+            {
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                // データ表示
+                for (int i = 0; i < cmbRepairFlgString.Length; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>((i + 1), cmbRepairFlgString[i]);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbRepairFlg, DataList);
+                cmbRepairFlg.SelectedValue = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 機密区分コンボボックス初期表示処理
         /// <summary>
         /// 機密区分コンボボックス初期表示処理
@@ -1266,5 +1318,27 @@
             dgvExpenses[e.ColumnIndex, e.RowIndex].Value = dwork.ToString("0.0");
         }
         #endregion
+
+        #region 公共工事フラグコンボ変更処理
+        /// <summary>
+        /// 公共工事フラグコンボ変更処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbPublicFlg_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            ComboBox CurCtrl = (ComboBox)sender;
+            int nPublicFlg = CommonMotions.cnvInt(CurCtrl.SelectedValue);
+            switch (nPublicFlg)
+            {
+                case (int)ConstructionTypeMaster.PublicFlgDef.Community:
+                    cmbRepairFlg.Enabled = true;
+                    break;
+                default:
+                    cmbRepairFlg.Enabled = false;
+                    break;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs	(revision 352)
@@ -29,15 +29,15 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
@@ -47,7 +47,11 @@
             this.btnDispDown = new System.Windows.Forms.Button();
             this.btnDispUp = new System.Windows.Forms.Button();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
-            this.cmbDataSecRank = new System.Windows.Forms.ComboBox();
+            this.dgvExpenses = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.numUDPeriod = new System.Windows.Forms.NumericUpDown();
             this.lblStaticItemCode = new System.Windows.Forms.Label();
             this.label3 = new System.Windows.Forms.Label();
@@ -61,12 +65,10 @@
             this.radioButton2 = new System.Windows.Forms.RadioButton();
             this.radioButton1 = new System.Windows.Forms.RadioButton();
             this.label6 = new System.Windows.Forms.Label();
+            this.cmbDataSecRank = new System.Windows.Forms.ComboBox();
+            this.label7 = new System.Windows.Forms.Label();
+            this.cmbRepairFlg = new System.Windows.Forms.ComboBox();
             this.lblEditMode = new System.Windows.Forms.Label();
-            this.dgvExpenses = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column4 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dgvWorkList = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column0 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -74,9 +76,9 @@
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.tableLayoutPanel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvExpenses)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.numUDPeriod)).BeginInit();
             this.panel1.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvExpenses)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvWorkList)).BeginInit();
             this.SuspendLayout();
             // 
@@ -193,22 +195,24 @@
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 150F));
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 210F));
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 250F));
-            this.tableLayoutPanel1.Controls.Add(this.cmbDataSecRank, 1, 3);
-            this.tableLayoutPanel1.Controls.Add(this.dgvExpenses, 0, 6);
-            this.tableLayoutPanel1.Controls.Add(this.numUDPeriod, 1, 5);
+            this.tableLayoutPanel1.Controls.Add(this.dgvExpenses, 0, 7);
+            this.tableLayoutPanel1.Controls.Add(this.numUDPeriod, 1, 6);
             this.tableLayoutPanel1.Controls.Add(this.lblStaticItemCode, 0, 0);
-            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 5);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 6);
             this.tableLayoutPanel1.Controls.Add(this.label4, 0, 1);
             this.tableLayoutPanel1.Controls.Add(this.txtInput1, 1, 1);
             this.tableLayoutPanel1.Controls.Add(this.lblTypeCode, 1, 0);
             this.tableLayoutPanel1.Controls.Add(this.label5, 0, 2);
             this.tableLayoutPanel1.Controls.Add(this.cmbPublicFlg, 1, 2);
-            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 4);
-            this.tableLayoutPanel1.Controls.Add(this.panel1, 1, 4);
-            this.tableLayoutPanel1.Controls.Add(this.label6, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 5);
+            this.tableLayoutPanel1.Controls.Add(this.panel1, 1, 5);
+            this.tableLayoutPanel1.Controls.Add(this.label6, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.cmbDataSecRank, 1, 4);
+            this.tableLayoutPanel1.Controls.Add(this.label7, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.cmbRepairFlg, 1, 3);
             this.tableLayoutPanel1.Location = new System.Drawing.Point(600, 100);
             this.tableLayoutPanel1.Name = "tableLayoutPanel1";
-            this.tableLayoutPanel1.RowCount = 7;
+            this.tableLayoutPanel1.RowCount = 8;
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
@@ -215,30 +219,96 @@
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 35F));
             this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 100F));
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
-            this.tableLayoutPanel1.Size = new System.Drawing.Size(610, 310);
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(610, 345);
             this.tableLayoutPanel1.TabIndex = 23;
             // 
-            // cmbDataSecRank
+            // dgvExpenses
             // 
-            this.tableLayoutPanel1.SetColumnSpan(this.cmbDataSecRank, 2);
-            this.cmbDataSecRank.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbDataSecRank.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbDataSecRank.FormattingEnabled = true;
-            this.cmbDataSecRank.Location = new System.Drawing.Point(153, 108);
-            this.cmbDataSecRank.Name = "cmbDataSecRank";
-            this.cmbDataSecRank.Size = new System.Drawing.Size(340, 24);
-            this.cmbDataSecRank.TabIndex = 25;
+            this.dgvExpenses.AllowUserToAddRows = false;
+            this.dgvExpenses.AllowUserToDeleteRows = false;
+            this.dgvExpenses.AllowUserToResizeColumns = false;
+            this.dgvExpenses.AllowUserToResizeRows = false;
+            this.dgvExpenses.BackgroundColor = System.Drawing.Color.White;
+            this.dgvExpenses.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvExpenses.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle10;
+            this.dgvExpenses.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvExpenses.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn2,
+            this.Column4,
+            this.dataGridViewTextBoxColumn3,
+            this.dataGridViewTextBoxColumn1});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvExpenses, 3);
+            this.dgvExpenses.EnableHeadersVisualStyles = false;
+            this.dgvExpenses.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dgvExpenses.Location = new System.Drawing.Point(3, 248);
+            this.dgvExpenses.Name = "dgvExpenses";
+            this.dgvExpenses.RowHeadersVisible = false;
+            this.dgvExpenses.RowHeadersWidth = 20;
+            this.dgvExpenses.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvExpenses.RowTemplate.Height = 20;
+            this.dgvExpenses.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvExpenses.Size = new System.Drawing.Size(600, 86);
+            this.dgvExpenses.TabIndex = 7;
+            this.dgvExpenses.Visible = false;
+            this.dgvExpenses.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvExpenses_CellValidated);
             // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "経費名称コード";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn2.Visible = false;
+            // 
+            // Column4
+            // 
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "";
+            this.Column4.Name = "Column4";
+            this.Column4.Width = 40;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle11.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle11;
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "経　費　名　称";
+            this.dataGridViewTextBoxColumn3.MaxInputLength = 50;
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Width = 440;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle12.ForeColor = System.Drawing.Color.Black;
+            dataGridViewCellStyle12.NullValue = null;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle12;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "経費率(%)";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
             // numUDPeriod
             // 
             this.numUDPeriod.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.numUDPeriod.Location = new System.Drawing.Point(153, 181);
+            this.numUDPeriod.Location = new System.Drawing.Point(153, 216);
             this.numUDPeriod.Name = "numUDPeriod";
             this.numUDPeriod.ReadOnly = true;
             this.numUDPeriod.Size = new System.Drawing.Size(84, 23);
-            this.numUDPeriod.TabIndex = 39;
+            this.numUDPeriod.TabIndex = 6;
             this.numUDPeriod.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
             this.numUDPeriod.Visible = false;
             this.numUDPeriod.ValueChanged += new System.EventHandler(this.numUDPeriod_ValueChanged);
@@ -262,7 +332,7 @@
             this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(3, 181);
+            this.label3.Location = new System.Drawing.Point(3, 216);
             this.label3.Name = "label3";
             this.label3.Size = new System.Drawing.Size(144, 23);
             this.label3.TabIndex = 38;
@@ -339,7 +409,7 @@
             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.ForeColor = System.Drawing.Color.Black;
-            this.label2.Location = new System.Drawing.Point(3, 145);
+            this.label2.Location = new System.Drawing.Point(3, 180);
             this.label2.Name = "label2";
             this.label2.Size = new System.Drawing.Size(144, 25);
             this.label2.TabIndex = 36;
@@ -352,10 +422,10 @@
             this.tableLayoutPanel1.SetColumnSpan(this.panel1, 2);
             this.panel1.Controls.Add(this.radioButton2);
             this.panel1.Controls.Add(this.radioButton1);
-            this.panel1.Location = new System.Drawing.Point(153, 143);
+            this.panel1.Location = new System.Drawing.Point(153, 178);
             this.panel1.Name = "panel1";
             this.panel1.Size = new System.Drawing.Size(340, 29);
-            this.panel1.TabIndex = 41;
+            this.panel1.TabIndex = 5;
             // 
             // radioButton2
             // 
@@ -391,7 +461,7 @@
             this.label6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label6.ForeColor = System.Drawing.Color.Black;
-            this.label6.Location = new System.Drawing.Point(3, 110);
+            this.label6.Location = new System.Drawing.Point(3, 145);
             this.label6.Name = "label6";
             this.label6.Size = new System.Drawing.Size(144, 25);
             this.label6.TabIndex = 36;
@@ -398,6 +468,44 @@
             this.label6.Text = "選択許可区分";
             this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // cmbDataSecRank
+            // 
+            this.cmbDataSecRank.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbDataSecRank, 2);
+            this.cmbDataSecRank.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDataSecRank.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDataSecRank.FormattingEnabled = true;
+            this.cmbDataSecRank.Location = new System.Drawing.Point(153, 147);
+            this.cmbDataSecRank.Name = "cmbDataSecRank";
+            this.cmbDataSecRank.Size = new System.Drawing.Size(340, 24);
+            this.cmbDataSecRank.TabIndex = 4;
+            // 
+            // label7
+            // 
+            this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(3, 110);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(144, 25);
+            this.label7.TabIndex = 36;
+            this.label7.Text = "新築・改修区分";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbRepairFlg
+            // 
+            this.cmbRepairFlg.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbRepairFlg, 2);
+            this.cmbRepairFlg.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbRepairFlg.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbRepairFlg.FormattingEnabled = true;
+            this.cmbRepairFlg.Location = new System.Drawing.Point(153, 112);
+            this.cmbRepairFlg.Name = "cmbRepairFlg";
+            this.cmbRepairFlg.Size = new System.Drawing.Size(340, 24);
+            this.cmbRepairFlg.TabIndex = 3;
+            this.cmbRepairFlg.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // lblEditMode
             // 
             this.lblEditMode.BackColor = System.Drawing.Color.White;
@@ -410,83 +518,6 @@
             this.lblEditMode.TabIndex = 24;
             this.lblEditMode.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // dgvExpenses
-            // 
-            this.dgvExpenses.AllowUserToAddRows = false;
-            this.dgvExpenses.AllowUserToDeleteRows = false;
-            this.dgvExpenses.AllowUserToResizeColumns = false;
-            this.dgvExpenses.AllowUserToResizeRows = false;
-            this.dgvExpenses.BackgroundColor = System.Drawing.Color.White;
-            this.dgvExpenses.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvExpenses.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
-            this.dgvExpenses.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvExpenses.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.dataGridViewTextBoxColumn2,
-            this.Column4,
-            this.dataGridViewTextBoxColumn3,
-            this.dataGridViewTextBoxColumn1});
-            this.tableLayoutPanel1.SetColumnSpan(this.dgvExpenses, 3);
-            this.dgvExpenses.EnableHeadersVisualStyles = false;
-            this.dgvExpenses.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.dgvExpenses.Location = new System.Drawing.Point(3, 213);
-            this.dgvExpenses.Name = "dgvExpenses";
-            this.dgvExpenses.RowHeadersVisible = false;
-            this.dgvExpenses.RowHeadersWidth = 20;
-            this.dgvExpenses.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvExpenses.RowTemplate.Height = 20;
-            this.dgvExpenses.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvExpenses.Size = new System.Drawing.Size(600, 86);
-            this.dgvExpenses.TabIndex = 25;
-            this.dgvExpenses.Visible = false;
-            this.dgvExpenses.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvExpenses_CellValidated);
-            // 
-            // dataGridViewTextBoxColumn2
-            // 
-            this.dataGridViewTextBoxColumn2.Frozen = true;
-            this.dataGridViewTextBoxColumn2.HeaderText = "経費名称コード";
-            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
-            this.dataGridViewTextBoxColumn2.ReadOnly = true;
-            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn2.Visible = false;
-            // 
-            // Column4
-            // 
-            this.Column4.Frozen = true;
-            this.Column4.HeaderText = "";
-            this.Column4.Name = "Column4";
-            this.Column4.Width = 40;
-            // 
-            // dataGridViewTextBoxColumn3
-            // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle2;
-            this.dataGridViewTextBoxColumn3.Frozen = true;
-            this.dataGridViewTextBoxColumn3.HeaderText = "経　費　名　称";
-            this.dataGridViewTextBoxColumn3.MaxInputLength = 50;
-            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
-            this.dataGridViewTextBoxColumn3.ReadOnly = true;
-            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn3.Width = 440;
-            // 
-            // dataGridViewTextBoxColumn1
-            // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
-            dataGridViewCellStyle3.NullValue = null;
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle3;
-            this.dataGridViewTextBoxColumn1.Frozen = true;
-            this.dataGridViewTextBoxColumn1.HeaderText = "経費率(%)";
-            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
-            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
             // dgvWorkList
             // 
             this.dgvWorkList.AllowUserToAddRows = false;
@@ -495,14 +526,14 @@
             this.dgvWorkList.AllowUserToResizeRows = false;
             this.dgvWorkList.BackgroundColor = System.Drawing.Color.White;
             this.dgvWorkList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle13;
             this.dgvWorkList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvWorkList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column0,
@@ -526,9 +557,9 @@
             // Column0
             // 
             this.Column0.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
-            this.Column0.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle14.ForeColor = System.Drawing.Color.Black;
+            this.Column0.DefaultCellStyle = dataGridViewCellStyle14;
             this.Column0.Frozen = true;
             this.Column0.HeaderText = "№";
             this.Column0.Name = "Column0";
@@ -538,8 +569,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle15;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "構成キー";
             this.Column1.Name = "Column1";
@@ -549,9 +580,9 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle16.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle16;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "工事種別名称";
             this.Column2.MaxInputLength = 50;
@@ -562,9 +593,9 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle8.ForeColor = System.Drawing.Color.Black;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle17.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle17;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "種別";
             this.Column3.Name = "Column3";
@@ -573,9 +604,9 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle9.ForeColor = System.Drawing.Color.Black;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle18.ForeColor = System.Drawing.Color.Black;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle18;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "経費";
             this.Column5.Name = "Column5";
@@ -613,10 +644,10 @@
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionType_KeyDown);
             this.tableLayoutPanel1.ResumeLayout(false);
             this.tableLayoutPanel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvExpenses)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.numUDPeriod)).EndInit();
             this.panel1.ResumeLayout(false);
             this.panel1.PerformLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvExpenses)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvWorkList)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
@@ -660,5 +691,7 @@
         private System.Windows.Forms.DataGridViewCheckBoxColumn Column4;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.ComboBox cmbRepairFlg;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(revision 352)
@@ -174,6 +174,7 @@
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.MaterialItem, string.Empty),          // 資材品目登録
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.SalesConfirm, string.Empty),          // 売上確認
                                                     new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.BankBusinessDay, string.Empty),       // 銀行営業日登録
+                                                    new KeyValuePair<int, string>((int)ClsExcute.MaintenanceExecuteNo.BudgetCodeSum, string.Empty),         // 予算書集計コード登録
                                                                         };
         #endregion
         #endregion
@@ -887,7 +888,7 @@
         /// <param name="e"></param>
         private void FrmSecurity_SizeChanged(object sender, EventArgs e)
         {
-            if (this.WindowState== FormWindowState.Normal)
+            if (this.WindowState == FormWindowState.Normal)
             {
                 // Normalサイズ設定
                 OrignalSizeSet();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs	(revision 352)
@@ -1336,12 +1336,14 @@
             else if (this.WindowState == FormWindowState.Maximized)
             {
                 // 最大化
-                CellSizeChangesWhenChangingScreenSize(false);
+                //CellSizeChangesWhenChangingScreenSize(false);
+                dgvWorkList.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;
             }
             else if (this.WindowState == FormWindowState.Normal)
             {
                 // 標準化
-                CellSizeChangesWhenChangingScreenSize(true);
+                //CellSizeChangesWhenChangingScreenSize(true);
+                dgvWorkList.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 352)
@@ -579,7 +579,6 @@
             // 
             this.dgvWorkList.AllowUserToAddRows = false;
             this.dgvWorkList.AllowUserToDeleteRows = false;
-            this.dgvWorkList.AllowUserToResizeColumns = false;
             this.dgvWorkList.AllowUserToResizeRows = false;
             this.dgvWorkList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
@@ -627,7 +626,6 @@
             dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
             this.Column0.DefaultCellStyle = dataGridViewCellStyle2;
-            this.Column0.Frozen = true;
             this.Column0.HeaderText = "№";
             this.Column0.Name = "Column0";
             this.Column0.ReadOnly = true;
@@ -636,7 +634,6 @@
             // 
             // Column6
             // 
-            this.Column6.Frozen = true;
             this.Column6.HeaderText = "工事状況コード";
             this.Column6.Name = "Column6";
             this.Column6.ReadOnly = true;
@@ -645,20 +642,18 @@
             // 
             // Column2
             // 
+            this.Column2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle3.BackColor = System.Drawing.Color.White;
             dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
             this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
-            this.Column2.Frozen = true;
             this.Column2.HeaderText = "工事状況";
             this.Column2.Name = "Column2";
             this.Column2.ReadOnly = true;
-            this.Column2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             // 
             // Column7
             // 
-            this.Column7.Frozen = true;
             this.Column7.HeaderText = "対象項目コード";
             this.Column7.Name = "Column7";
             this.Column7.ReadOnly = true;
@@ -667,28 +662,26 @@
             // 
             // Column3
             // 
+            this.Column3.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle4.BackColor = System.Drawing.Color.White;
             dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
             this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
-            this.Column3.Frozen = true;
             this.Column3.HeaderText = "対象項目";
             this.Column3.Name = "Column3";
             this.Column3.ReadOnly = true;
-            this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             // 
             // Column8
             // 
+            this.Column8.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle5.BackColor = System.Drawing.Color.White;
             dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
             this.Column8.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column8.Frozen = true;
             this.Column8.HeaderText = "タイミング";
             this.Column8.Name = "Column8";
             this.Column8.ReadOnly = true;
-            this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column8.Width = 160;
             // 
@@ -696,25 +689,22 @@
             // 
             dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
             this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
-            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.Visible = false;
             // 
             // Column9
             // 
+            this.Column9.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle7.BackColor = System.Drawing.Color.White;
             dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
             this.Column9.DefaultCellStyle = dataGridViewCellStyle7;
-            this.Column9.Frozen = true;
             this.Column9.HeaderText = "日";
             this.Column9.Name = "Column9";
             this.Column9.ReadOnly = true;
-            this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column9.Width = 50;
             // 
@@ -725,7 +715,6 @@
             this.Column4.HeaderText = "タイトル";
             this.Column4.Name = "Column4";
             this.Column4.ReadOnly = true;
-            this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column4.Width = 300;
             // 
@@ -736,7 +725,6 @@
             this.Column5.HeaderText = "メッセージ";
             this.Column5.Name = "Column5";
             this.Column5.ReadOnly = true;
-            this.Column5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column5.Width = 600;
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs	(revision 352)
@@ -295,9 +295,9 @@
                         strSQL.Append(" Inner Join constructiontypemaster AS ConstrType On ConstrType.TypeCode = Base.ConstructionType");
                         strSQL.AppendFormat(" WHERE EXDB.CONSTRUCTIONCODE in {0}", strInWher);
                         strSQL.Append(" AND EXDB.SOURCECODE = A.CONSTRUCTIONCODE");
-                        strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                        strSQL.AppendFormat(" AND ((ConstrType.PublicFlg != {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                         strSQL.AppendFormat(" AND EXDB.EXECUTIONAMOUNT >= {0})", CommonDefine.s_PrintOutPrice);
-                        strSQL.AppendFormat(" Or (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.ConstructionTypeDef.Community);
+                        strSQL.AppendFormat(" Or (ConstrType.PublicFlg = {0}", (int)ConstructionTypeMaster.PublicFlgDef.Community);
                         strSQL.AppendFormat(" And  EXDB.EXECUTIONAMOUNT >= {0})))", CommonDefine.s_PrintOutPricePublic);
 
                         break;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 352)
@@ -708,6 +708,11 @@
                                                                     (int)ClsExcute.MaintenanceExecuteNo.ConstructionWork,
                                                                     (int)ClsExcute.MaintenanceExecuteNo.ComponentLink
                                                                 },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.BudgetCodeSum,
+                                                                    0,
+                                                                    0,
+                                                                    0
+                                                                },
                                                                 { (int)ClsExcute.MaintenanceExecuteNo.BusinessType,
                                                                     (int)ClsExcute.MaintenanceExecuteNo.OrderDivision,
                                                                     (int)ClsExcute.MaintenanceExecuteNo.ConstrExpenses,
@@ -1490,21 +1495,10 @@
                 // 行毎に書き込みの権限を判定する
                 if (PersonCode == CommonDefine.s_CompanyActionCode)
                 {   // 会社行事
-                    // 新セキュリティ対応
-                    if (CommonMotions.LoginUserData.SecCode == 0)
-                    {
-                        // 所属長以上は書き込める
-                        if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key) bPatmission = true;
-                        // 所属長以上でなくても総務部は書き込める
-                        if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision) bPatmission = true;
-                    }
-                    else
-                    {
-                        // 所属長以上は書き込める
-                        if (CommonMotions.LoginUserSecurity.SecRank != CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key) bPatmission = true;
-                        // 所属長以上でなくても総務部は書き込める
-                        if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)SecurityMaster.GeneAffDef.GeneralDep) bPatmission = true;
-                    }
+                    // 所属長以上は書き込める
+                    if (CommonMotions.LoginUserSecurity.SecRank != CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key) bPatmission = true;
+                    // 所属長以上でなくても総務部は書き込める
+                    if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)SecurityMaster.GeneAffDef.GeneralDep) bPatmission = true;
                 }
                 else if (PersonCode == CommonDefine.s_DivisionActionCode)
                 {   // 部署行事は全員が書き込める
@@ -1520,47 +1514,39 @@
                 }
                 else
                 {   // ----- それ以外は書き込み権限があれば書き込める
-                    // 新セキュリティ対応
-                    if (CommonMotions.LoginUserData.SecCode == 0)
+                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
+                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
+
+                    // システム管理者は全てOK
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
                     {
-                        if (ClsSecurityPermission.ActionSchdulePermission(PersonCode)) bPatmission = true;
+                        bPatmission = true;
                     }
-                    else
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
                     {
-                        int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
-                        int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
-                        int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
-
-                        // システム管理者は全てOK
-                        if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                        // ===== 統括者アクセス対象の条件を調べる
+                        bPatmission = true;
+                    }
+                    // ログイン者が所属長の場合は対象者の所属部署を参照部署と比較
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key
+                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
+                    {
+                        // 参照部署取得
+                        List<KeyValuePair<int, string>> DepList = new List<KeyValuePair<int, string>>();
+                        ClsSecurityPermission.GetRefDepartment(CommonMotions.LoginUserData.PersonCode, ref DepList);
+                        int Range = 0;
+                        int CurRank = ClsSecurityPermission.GetPersonDataAccessRank(PersonCode, ref Range);
+                        // 参照部署にあるかのチェック
+                        foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserRefDepartment)
                         {
-                            bPatmission = true;
-                        }
-                        else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
-                        {
-                            // ===== 統括者アクセス対象の条件を調べる
-                            bPatmission = true;
-                        }
-                        // ログイン者が所属長の場合は対象者の所属部署を参照部署と比較
-                        else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key
-                            || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
-                        {
-                            // 参照部署取得
-                            List<KeyValuePair<int, string>> DepList = new List<KeyValuePair<int, string>>();
-                            ClsSecurityPermission.GetRefDepartment(CommonMotions.LoginUserData.PersonCode, ref DepList);
-                            int Range = 0;
-                            int CurRank = ClsSecurityPermission.GetPersonDataAccessRank(PersonCode, ref Range);
-                            // 参照部署にあるかのチェック
-                            foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserRefDepartment)
+                            if (DepCode == RefDepRec.DepartmentCode)
                             {
-                                if (DepCode == RefDepRec.DepartmentCode)
+                                // 書込み者が自分より上位者では無い場合は読み込める
+                                if (CommonMotions.LoginUserSecurity.SecRank <= CurRank)
                                 {
-                                    // 書込み者が自分より上位者では無い場合は読み込める
-                                    if (CommonMotions.LoginUserSecurity.SecRank <= CurRank)
-                                    {
-                                        bPatmission = true;
-                                        break;
-                                    }
+                                    bPatmission = true;
+                                    break;
                                 }
                             }
                         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 352)
@@ -2649,6 +2649,7 @@
                 }
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -2890,6 +2891,8 @@
                 // グリッドソート実行
                 GridSortExcute(dgv);
                 DisplayControlProgressBar(false);
+
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -3129,6 +3132,7 @@
                 // グリッドソート実行
                 GridSortExcute(dgv);
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -3873,6 +3877,8 @@
                 cbiDB.close(); cbiDB = null;
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -4079,6 +4085,7 @@
                 cbiDB.close(); cbiDB = null;
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -4286,6 +4293,7 @@
                 cbiDB.close(); cbiDB = null;
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -4454,6 +4462,7 @@
                 dmDB.close(); dmDB = null;
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -5146,6 +5155,7 @@
                 dmDB.close(); dmDB = null;
                 dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -5213,7 +5223,8 @@
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             IOMPersonInCharge picDB = new IOMPersonInCharge();
-            dgvNonOrders.SuspendLayout();
+            DataGridView dgv = dgvNonOrders;
+            dgv.SuspendLayout();
             try
             {
                 // 工事検索時は検索画面の値をセットする
@@ -5224,7 +5235,7 @@
                     numUDNonOrder.ValueChanged += new EventHandler(numUDNonOrder_ValueChanged);
                 }
 
-                dgvNonOrders.Rows.Clear();
+                dgv.Rows.Clear();
                 // SQL作成
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append("SELECT");
@@ -5316,12 +5327,12 @@
                     if (BreakConstructionPeriod != wrkRec.ConstructionPeriod)
                     {
                         BreakConstructionPeriod = wrkRec.ConstructionPeriod;
-                        dgvNonOrders.Rows.Add();
+                        dgv.Rows.Add();
                         iLineCnt++;
                     }
 
                     // データセット
-                    int LineCnt = dgvNonOrders.Rows.Add(wrkRec.ConstructionCode
+                    int LineCnt = dgv.Rows.Add(wrkRec.ConstructionCode
                                                 , ino
                                                 , wrkRec.ConstructionPeriod
                                                 , Details[0]
@@ -5337,9 +5348,9 @@
 
                 }
                 // 行や列を追加したり、セルに値を設定するときは、自動サイズ設定しない。
-                dgvNonOrders.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
-                dgvNonOrders.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
-                dgvNonOrders.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+                dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
+                dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
+                dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
 
                 // ProgressBarの値を変更する
                 MainProgressBar.Value = MainProgressBar.Maximum;
@@ -5353,20 +5364,21 @@
             finally
             {
                 // 読込時データカウント取得
-                if (CommonDefine.s_MaxInitLineCount > dgvNonOrders.RowCount)
-                    dgvNonOrders.RowCount += (CommonDefine.s_MaxInitLineCount - dgvNonOrders.RowCount);
+                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
+                    dgv.RowCount += (CommonDefine.s_MaxInitLineCount - dgv.RowCount);
 
                 // データが多くなればソートできる
-                foreach (DataGridViewColumn wrkCol in dgvNonOrders.Columns)
+                foreach (DataGridViewColumn wrkCol in dgv.Columns)
                     wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
 
                 // グリッドソート実行
-                GridSortExcute(dgvNonOrders);
+                GridSortExcute(dgv);
 
                 cbiDB.close(); cbiDB = null;
                 picDB.close(); picDB = null;
-                dgvNonOrders.ResumeLayout();
+                dgv.ResumeLayout();
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
@@ -5425,6 +5437,7 @@
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             IOMPersonInCharge picDB = new IOMPersonInCharge();
+            DataGridView dgv = dgvCompletionOfConstruction;
             try
             {
                 // 工事検索時は検索画面の値をセットする
@@ -5435,7 +5448,7 @@
                     numUDCompletion.ValueChanged += new EventHandler(numUDCompletion_ValueChanged);
                 }
 
-                dgvCompletionOfConstruction.Rows.Clear();
+                dgv.Rows.Clear();
                 // SQL作成
                 StringBuilder strSQL = new StringBuilder();
                 strSQL.Append("SELECT");
@@ -5510,9 +5523,9 @@
                 if (arData.Count != 0) DispCompOfConstrGrid(cbiDB, arData);
 
                 // 行や列を追加したり、セルに値を設定するときは、自動サイズ設定しない。
-                dgvCompletionOfConstruction.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
-                dgvCompletionOfConstruction.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
-                dgvCompletionOfConstruction.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+                dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
+                dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
+                dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
 
                 // ProgressBarの値を変更する
                 MainProgressBar.Value = MainProgressBar.Maximum;
@@ -5557,18 +5570,19 @@
             finally
             {
                 // 読込時データカウント取得
-                if (CommonDefine.s_MaxInitLineCount > dgvCompletionOfConstruction.RowCount)
-                    dgvCompletionOfConstruction.RowCount += (CommonDefine.s_MaxInitLineCount - dgvCompletionOfConstruction.RowCount);
-                foreach (DataGridViewColumn wrkCol in dgvCompletionOfConstruction.Columns)
+                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
+                    dgv.RowCount += (CommonDefine.s_MaxInitLineCount - dgv.RowCount);
+                foreach (DataGridViewColumn wrkCol in dgv.Columns)
                     wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
 
                 // グリッドソート実行
-                GridSortExcute(dgvCompletionOfConstruction);
-                dgvCompletionOfConstruction.ResumeLayout();
+                GridSortExcute(dgv);
+                dgv.ResumeLayout();
 
                 cbiDB.close(); cbiDB = null;
                 picDB.close(); picDB = null;
                 DisplayControlProgressBar(false);
+                dgv.CurrentCell = null;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 352)
@@ -145,8 +145,12 @@
     <Compile Include="Common\Process\ClsExcute.cs" />
     <Compile Include="Common\CommonDefine.cs" />
     <Compile Include="Common\Office\UsedWord.cs" />
+    <Compile Include="DataModel\CommonCostLarge.cs" />
+    <Compile Include="DataModel\CommonCostMiddle.cs" />
+    <Compile Include="DataModel\CommonCostMiddleSearchWord.cs" />
     <Compile Include="DataModel\ConstrLedgerExpenses.cs" />
     <Compile Include="DataModel\DepartmentCostData.cs" />
+    <Compile Include="DataModel\BudgetSumCode.cs" />
     <Compile Include="DataModel\PersonExpensesCost.cs" />
     <Compile Include="DataModel\SalaryClass.cs" />
     <Compile Include="DataModel\GridCellStyleMember.cs" />
@@ -192,12 +196,8 @@
     <Compile Include="DataModel\DailyDataVehicles.cs" />
     <Compile Include="DataModel\DailyDataDetail.cs" />
     <Compile Include="DataModel\DailyDataConstruction.cs" />
-    <Compile Include="DataModel\CommonCostMiddleSearchWord.cs" />
-    <Compile Include="DataModel\CommonCostMiddle.cs" />
     <Compile Include="DataModel\CommonCostLinkMS.cs" />
-    <Compile Include="DataModel\ComponentToTypeMaster.cs" />
     <Compile Include="DataModel\ComponentLinkMaster.cs" />
-    <Compile Include="DataModel\CommonCostLarge.cs" />
     <Compile Include="DataModel\ConstructionLedgerExcute.cs" />
     <Compile Include="DataModel\ConstructionLedgerDetail.cs" />
     <Compile Include="DataModel\ConstructionLedger.cs" />
@@ -239,6 +239,7 @@
     <Compile Include="DB\IOAccess\IODepositApprovalInfo.cs" />
     <Compile Include="DB\IOAccess\IODepositData.cs" />
     <Compile Include="DB\IOAccess\IODepositDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IOMBudgetSumCode.cs" />
     <Compile Include="DB\IOAccess\IOInvoiceData.cs" />
     <Compile Include="DB\IOAccess\IOMaterialInfo.cs" />
     <Compile Include="DB\IOAccess\IOMaterialItem.cs" />
@@ -247,6 +248,9 @@
     <Compile Include="DB\IOAccess\IOMCategoryName.cs" />
     <Compile Include="DB\IOAccess\IOMBizPeriodHistory.cs" />
     <Compile Include="DB\IOAccess\IOMChgChargeDep.cs" />
+    <Compile Include="DB\IOAccess\IOMCommonCostLarge.cs" />
+    <Compile Include="DB\IOAccess\IOMCommonCostMiddle.cs" />
+    <Compile Include="DB\IOAccess\IOMCommonCostMiddleSearchWord.cs" />
     <Compile Include="DB\IOAccess\IOPeriodAvoidance.cs" />
     <Compile Include="DB\IOAccess\IOPersonApprovalDetail.cs" />
     <Compile Include="DB\IOAccess\IOSFPDataDetail.cs" />
@@ -497,7 +501,6 @@
     <Compile Include="DB\IOAccess\IODailyDataDetail.cs" />
     <Compile Include="DB\IOAccess\IODailyDataConstruction.cs" />
     <Compile Include="DB\IOAccess\IOCostDataOfPerson.cs" />
-    <Compile Include="DB\IOAccess\IOMComponentToTypeMaster.cs" />
     <Compile Include="DB\IOAccess\IOMSubContractorJobCategory.cs" />
     <Compile Include="DB\IOAccess\IOMSuppliers.cs" />
     <Compile Include="DB\IOAccess\IOPurchaseOrderDetail.cs" />
@@ -505,9 +508,6 @@
     <Compile Include="DB\IOAccess\IOInputSearchLogData.cs" />
     <Compile Include="DB\IOAccess\IOActionScheduleData.cs" />
     <Compile Include="DB\IOAccess\DBCommonMotions.cs" />
-    <Compile Include="DB\IOAccess\IOMCommonCostLarge.cs" />
-    <Compile Include="DB\IOAccess\IOMCommonCostMiddleSearchWord.cs" />
-    <Compile Include="DB\IOAccess\IOMCommonCostMiddle.cs" />
     <Compile Include="DB\IOAccess\IOMCommonCostLinkMS.cs" />
     <Compile Include="DB\IOAccess\IOMConstructionItem.cs" />
     <Compile Include="DB\IOAccess\IOMConstructionTypeMaster.cs" />
@@ -805,6 +805,15 @@
     <Compile Include="Forms\Master\BankBusinessDay\FrmBBDAux.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Forms\Master\BudgetItem\FrmBudgetItem.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\BudgetItem\FrmBudgetItem.Designer.cs">
+      <DependentUpon>FrmBudgetItem.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\Master\BudgetItem\FrmBudgetItemAux.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\Master\Calender\PrintCommon.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1585,6 +1594,9 @@
     <EmbeddedResource Include="Forms\Master\BankBusinessDay\FrmBBD.resx">
       <DependentUpon>FrmBBD.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\Master\BudgetItem\FrmBudgetItem.resx">
+      <DependentUpon>FrmBudgetItem.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\Master\CategoryName\FrmCategoryNameMaster.resx">
       <DependentUpon>FrmCategoryNameMaster.cs</DependentUpon>
     </EmbeddedResource>
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 351)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 352)
@@ -32,7 +32,7 @@
 // すべての値を指定するか、下のように '*' を使ってビルドおよびリビジョン番号を 
 // 既定値にすることができます:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.1.204")]
-[assembly: AssemblyFileVersion("1.0.1.204")]
+[assembly: AssemblyVersion("1.0.1.205")]
+[assembly: AssemblyFileVersion("1.0.1.205")]
 // Log4netを使用する
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
